/* Generated by Cython 3.1.2 */

/* BEGIN: Cython Metadata
{
    "distutils": {
        "name": "unicorn_binance_rest_api.manager",
        "sources": [
            "unicorn_binance_rest_api/manager.py"
        ]
    },
    "module_name": "unicorn_binance_rest_api.manager"
}
END: Cython Metadata */

#ifndef PY_SSIZE_T_CLEAN
#define PY_SSIZE_T_CLEAN
#endif /* PY_SSIZE_T_CLEAN */
/* InitLimitedAPI */
#if defined(Py_LIMITED_API) && !defined(CYTHON_LIMITED_API)
  #define CYTHON_LIMITED_API 1
#endif

#include "Python.h"
#ifndef Py_PYTHON_H
    #error Python headers needed to compile C extensions, please install development version of Python.
#elif PY_VERSION_HEX < 0x03080000
    #error Cython requires Python 3.8+.
#else
#define __PYX_ABI_VERSION "3_1_2"
#define CYTHON_HEX_VERSION 0x030102F0
#define CYTHON_FUTURE_DIVISION 1
/* CModulePreamble */
#include <stddef.h>
#ifndef offsetof
  #define offsetof(type, member) ( (size_t) & ((type*)0) -> member )
#endif
#if !defined(_WIN32) && !defined(WIN32) && !defined(MS_WINDOWS)
  #ifndef __stdcall
    #define __stdcall
  #endif
  #ifndef __cdecl
    #define __cdecl
  #endif
  #ifndef __fastcall
    #define __fastcall
  #endif
#endif
#ifndef DL_IMPORT
  #define DL_IMPORT(t) t
#endif
#ifndef DL_EXPORT
  #define DL_EXPORT(t) t
#endif
#define __PYX_COMMA ,
#ifndef HAVE_LONG_LONG
  #define HAVE_LONG_LONG
#endif
#ifndef PY_LONG_LONG
  #define PY_LONG_LONG LONG_LONG
#endif
#ifndef Py_HUGE_VAL
  #define Py_HUGE_VAL HUGE_VAL
#endif
#define __PYX_LIMITED_VERSION_HEX PY_VERSION_HEX
#if defined(GRAALVM_PYTHON)
  /* For very preliminary testing purposes. Most variables are set the same as PyPy.
     The existence of this section does not imply that anything works or is even tested */
  #define CYTHON_COMPILING_IN_PYPY 0
  #define CYTHON_COMPILING_IN_CPYTHON 0
  #define CYTHON_COMPILING_IN_LIMITED_API 0
  #define CYTHON_COMPILING_IN_GRAAL 1
  #define CYTHON_COMPILING_IN_CPYTHON_FREETHREADING 0
  #undef CYTHON_USE_TYPE_SLOTS
  #define CYTHON_USE_TYPE_SLOTS 0
  #undef CYTHON_USE_TYPE_SPECS
  #define CYTHON_USE_TYPE_SPECS 0
  #undef CYTHON_USE_PYTYPE_LOOKUP
  #define CYTHON_USE_PYTYPE_LOOKUP 0
  #undef CYTHON_USE_PYLIST_INTERNALS
  #define CYTHON_USE_PYLIST_INTERNALS 0
  #undef CYTHON_USE_UNICODE_INTERNALS
  #define CYTHON_USE_UNICODE_INTERNALS 0
  #undef CYTHON_USE_UNICODE_WRITER
  #define CYTHON_USE_UNICODE_WRITER 0
  #undef CYTHON_USE_PYLONG_INTERNALS
  #define CYTHON_USE_PYLONG_INTERNALS 0
  #undef CYTHON_AVOID_BORROWED_REFS
  #define CYTHON_AVOID_BORROWED_REFS 1
  #undef CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS
  #define CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS 1
  #undef CYTHON_ASSUME_SAFE_MACROS
  #define CYTHON_ASSUME_SAFE_MACROS 0
  #undef CYTHON_ASSUME_SAFE_SIZE
  #define CYTHON_ASSUME_SAFE_SIZE 0
  #undef CYTHON_UNPACK_METHODS
  #define CYTHON_UNPACK_METHODS 0
  #undef CYTHON_FAST_THREAD_STATE
  #define CYTHON_FAST_THREAD_STATE 0
  #undef CYTHON_FAST_GIL
  #define CYTHON_FAST_GIL 0
  #undef CYTHON_METH_FASTCALL
  #define CYTHON_METH_FASTCALL 0
  #undef CYTHON_FAST_PYCALL
  #define CYTHON_FAST_PYCALL 0
  #ifndef CYTHON_PEP487_INIT_SUBCLASS
    #define CYTHON_PEP487_INIT_SUBCLASS 1
  #endif
  #undef CYTHON_PEP489_MULTI_PHASE_INIT
  #define CYTHON_PEP489_MULTI_PHASE_INIT 1
  #undef CYTHON_USE_MODULE_STATE
  #define CYTHON_USE_MODULE_STATE 0
  #undef CYTHON_USE_SYS_MONITORING
  #define CYTHON_USE_SYS_MONITORING 0
  #undef CYTHON_USE_TP_FINALIZE
  #define CYTHON_USE_TP_FINALIZE 0
  #undef CYTHON_USE_AM_SEND
  #define CYTHON_USE_AM_SEND 0
  #undef CYTHON_USE_DICT_VERSIONS
  #define CYTHON_USE_DICT_VERSIONS 0
  #undef CYTHON_USE_EXC_INFO_STACK
  #define CYTHON_USE_EXC_INFO_STACK 1
  #ifndef CYTHON_UPDATE_DESCRIPTOR_DOC
    #define CYTHON_UPDATE_DESCRIPTOR_DOC 0
  #endif
  #undef CYTHON_USE_FREELISTS
  #define CYTHON_USE_FREELISTS 0
#elif defined(PYPY_VERSION)
  #define CYTHON_COMPILING_IN_PYPY 1
  #define CYTHON_COMPILING_IN_CPYTHON 0
  #define CYTHON_COMPILING_IN_LIMITED_API 0
  #define CYTHON_COMPILING_IN_GRAAL 0
  #define CYTHON_COMPILING_IN_CPYTHON_FREETHREADING 0
  #undef CYTHON_USE_TYPE_SLOTS
  #define CYTHON_USE_TYPE_SLOTS 1
  #ifndef CYTHON_USE_TYPE_SPECS
    #define CYTHON_USE_TYPE_SPECS 0
  #endif
  #undef CYTHON_USE_PYTYPE_LOOKUP
  #define CYTHON_USE_PYTYPE_LOOKUP 0
  #undef CYTHON_USE_PYLIST_INTERNALS
  #define CYTHON_USE_PYLIST_INTERNALS 0
  #undef CYTHON_USE_UNICODE_INTERNALS
  #define CYTHON_USE_UNICODE_INTERNALS 0
  #undef CYTHON_USE_UNICODE_WRITER
  #define CYTHON_USE_UNICODE_WRITER 0
  #undef CYTHON_USE_PYLONG_INTERNALS
  #define CYTHON_USE_PYLONG_INTERNALS 0
  #undef CYTHON_AVOID_BORROWED_REFS
  #define CYTHON_AVOID_BORROWED_REFS 1
  #undef CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS
  #define CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS 1
  #undef CYTHON_ASSUME_SAFE_MACROS
  #define CYTHON_ASSUME_SAFE_MACROS 0
  #ifndef CYTHON_ASSUME_SAFE_SIZE
    #define CYTHON_ASSUME_SAFE_SIZE 1
  #endif
  #undef CYTHON_UNPACK_METHODS
  #define CYTHON_UNPACK_METHODS 0
  #undef CYTHON_FAST_THREAD_STATE
  #define CYTHON_FAST_THREAD_STATE 0
  #undef CYTHON_FAST_GIL
  #define CYTHON_FAST_GIL 0
  #undef CYTHON_METH_FASTCALL
  #define CYTHON_METH_FASTCALL 0
  #undef CYTHON_FAST_PYCALL
  #define CYTHON_FAST_PYCALL 0
  #ifndef CYTHON_PEP487_INIT_SUBCLASS
    #define CYTHON_PEP487_INIT_SUBCLASS 1
  #endif
  #if PY_VERSION_HEX < 0x03090000
    #undef CYTHON_PEP489_MULTI_PHASE_INIT
    #define CYTHON_PEP489_MULTI_PHASE_INIT 0
  #elif !defined(CYTHON_PEP489_MULTI_PHASE_INIT)
    #define CYTHON_PEP489_MULTI_PHASE_INIT 1
  #endif
  #undef CYTHON_USE_MODULE_STATE
  #define CYTHON_USE_MODULE_STATE 0
  #undef CYTHON_USE_SYS_MONITORING
  #define CYTHON_USE_SYS_MONITORING 0
  #ifndef CYTHON_USE_TP_FINALIZE
    #define CYTHON_USE_TP_FINALIZE (PYPY_VERSION_NUM >= 0x07030C00)
  #endif
  #undef CYTHON_USE_AM_SEND
  #define CYTHON_USE_AM_SEND 0
  #undef CYTHON_USE_DICT_VERSIONS
  #define CYTHON_USE_DICT_VERSIONS 0
  #undef CYTHON_USE_EXC_INFO_STACK
  #define CYTHON_USE_EXC_INFO_STACK 0
  #ifndef CYTHON_UPDATE_DESCRIPTOR_DOC
    #define CYTHON_UPDATE_DESCRIPTOR_DOC (PYPY_VERSION_NUM >= 0x07031100)
  #endif
  #undef CYTHON_USE_FREELISTS
  #define CYTHON_USE_FREELISTS 0
#elif defined(CYTHON_LIMITED_API)
  #ifdef Py_LIMITED_API
    #undef __PYX_LIMITED_VERSION_HEX
    #define __PYX_LIMITED_VERSION_HEX Py_LIMITED_API
  #endif
  #define CYTHON_COMPILING_IN_PYPY 0
  #define CYTHON_COMPILING_IN_CPYTHON 0
  #define CYTHON_COMPILING_IN_LIMITED_API 1
  #define CYTHON_COMPILING_IN_GRAAL 0
  #define CYTHON_COMPILING_IN_CPYTHON_FREETHREADING 0
  #undef CYTHON_CLINE_IN_TRACEBACK
  #define CYTHON_CLINE_IN_TRACEBACK 0
  #undef CYTHON_USE_TYPE_SLOTS
  #define CYTHON_USE_TYPE_SLOTS 0
  #undef CYTHON_USE_TYPE_SPECS
  #define CYTHON_USE_TYPE_SPECS 1
  #undef CYTHON_USE_PYTYPE_LOOKUP
  #define CYTHON_USE_PYTYPE_LOOKUP 0
  #undef CYTHON_USE_PYLIST_INTERNALS
  #define CYTHON_USE_PYLIST_INTERNALS 0
  #undef CYTHON_USE_UNICODE_INTERNALS
  #define CYTHON_USE_UNICODE_INTERNALS 0
  #ifndef CYTHON_USE_UNICODE_WRITER
    #define CYTHON_USE_UNICODE_WRITER 0
  #endif
  #undef CYTHON_USE_PYLONG_INTERNALS
  #define CYTHON_USE_PYLONG_INTERNALS 0
  #ifndef CYTHON_AVOID_BORROWED_REFS
    #define CYTHON_AVOID_BORROWED_REFS 0
  #endif
  #ifndef CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS
    #define CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS 0
  #endif
  #undef CYTHON_ASSUME_SAFE_MACROS
  #define CYTHON_ASSUME_SAFE_MACROS 0
  #undef CYTHON_ASSUME_SAFE_SIZE
  #define CYTHON_ASSUME_SAFE_SIZE 0
  #undef CYTHON_UNPACK_METHODS
  #define CYTHON_UNPACK_METHODS 0
  #undef CYTHON_FAST_THREAD_STATE
  #define CYTHON_FAST_THREAD_STATE 0
  #undef CYTHON_FAST_GIL
  #define CYTHON_FAST_GIL 0
  #undef CYTHON_METH_FASTCALL
  #define CYTHON_METH_FASTCALL (__PYX_LIMITED_VERSION_HEX >= 0x030C0000)
  #undef CYTHON_FAST_PYCALL
  #define CYTHON_FAST_PYCALL 0
  #ifndef CYTHON_PEP487_INIT_SUBCLASS
    #define CYTHON_PEP487_INIT_SUBCLASS 1
  #endif
  #ifndef CYTHON_PEP489_MULTI_PHASE_INIT
    #define CYTHON_PEP489_MULTI_PHASE_INIT 1
  #endif
  #ifndef CYTHON_USE_MODULE_STATE
    #define CYTHON_USE_MODULE_STATE 0
  #endif
  #undef CYTHON_USE_SYS_MONITORING
  #define CYTHON_USE_SYS_MONITORING 0
  #ifndef CYTHON_USE_TP_FINALIZE
    #define CYTHON_USE_TP_FINALIZE 0
  #endif
  #ifndef CYTHON_USE_AM_SEND
    #define CYTHON_USE_AM_SEND (__PYX_LIMITED_VERSION_HEX >= 0x030A0000)
  #endif
  #undef CYTHON_USE_DICT_VERSIONS
  #define CYTHON_USE_DICT_VERSIONS 0
  #undef CYTHON_USE_EXC_INFO_STACK
  #define CYTHON_USE_EXC_INFO_STACK 0
  #ifndef CYTHON_UPDATE_DESCRIPTOR_DOC
    #define CYTHON_UPDATE_DESCRIPTOR_DOC 0
  #endif
  #undef CYTHON_USE_FREELISTS
  #define CYTHON_USE_FREELISTS 0
#else
  #define CYTHON_COMPILING_IN_PYPY 0
  #define CYTHON_COMPILING_IN_CPYTHON 1
  #define CYTHON_COMPILING_IN_LIMITED_API 0
  #define CYTHON_COMPILING_IN_GRAAL 0
  #ifdef Py_GIL_DISABLED
    #define CYTHON_COMPILING_IN_CPYTHON_FREETHREADING 1
  #else
    #define CYTHON_COMPILING_IN_CPYTHON_FREETHREADING 0
  #endif
  #if PY_VERSION_HEX < 0x030A0000
    #undef CYTHON_USE_TYPE_SLOTS
    #define CYTHON_USE_TYPE_SLOTS 1
  #elif !defined(CYTHON_USE_TYPE_SLOTS)
    #define CYTHON_USE_TYPE_SLOTS 1
  #endif
  #ifndef CYTHON_USE_TYPE_SPECS
    #define CYTHON_USE_TYPE_SPECS 0
  #endif
  #ifndef CYTHON_USE_PYTYPE_LOOKUP
    #define CYTHON_USE_PYTYPE_LOOKUP 1
  #endif
  #ifndef CYTHON_USE_PYLONG_INTERNALS
    #define CYTHON_USE_PYLONG_INTERNALS 1
  #endif
  #if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING
    #undef CYTHON_USE_PYLIST_INTERNALS
    #define CYTHON_USE_PYLIST_INTERNALS 0
  #elif !defined(CYTHON_USE_PYLIST_INTERNALS)
    #define CYTHON_USE_PYLIST_INTERNALS 1
  #endif
  #ifndef CYTHON_USE_UNICODE_INTERNALS
    #define CYTHON_USE_UNICODE_INTERNALS 1
  #endif
  #if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING || PY_VERSION_HEX >= 0x030B00A2
    #undef CYTHON_USE_UNICODE_WRITER
    #define CYTHON_USE_UNICODE_WRITER 0
  #elif !defined(CYTHON_USE_UNICODE_WRITER)
    #define CYTHON_USE_UNICODE_WRITER 1
  #endif
  #ifndef CYTHON_AVOID_BORROWED_REFS
    #define CYTHON_AVOID_BORROWED_REFS 0
  #endif
  #if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING
    #undef CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS
    #define CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS 1
  #elif !defined(CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS)
    #define CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS 0
  #endif
  #ifndef CYTHON_ASSUME_SAFE_MACROS
    #define CYTHON_ASSUME_SAFE_MACROS 1
  #endif
  #ifndef CYTHON_ASSUME_SAFE_SIZE
    #define CYTHON_ASSUME_SAFE_SIZE 1
  #endif
  #ifndef CYTHON_UNPACK_METHODS
    #define CYTHON_UNPACK_METHODS 1
  #endif
  #ifndef CYTHON_FAST_THREAD_STATE
    #define CYTHON_FAST_THREAD_STATE 1
  #endif
  #if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING
    #undef CYTHON_FAST_GIL
    #define CYTHON_FAST_GIL 0
  #elif !defined(CYTHON_FAST_GIL)
    #define CYTHON_FAST_GIL (PY_VERSION_HEX < 0x030C00A6)
  #endif
  #ifndef CYTHON_METH_FASTCALL
    #define CYTHON_METH_FASTCALL 1
  #endif
  #ifndef CYTHON_FAST_PYCALL
    #define CYTHON_FAST_PYCALL 1
  #endif
  #ifndef CYTHON_PEP487_INIT_SUBCLASS
    #define CYTHON_PEP487_INIT_SUBCLASS 1
  #endif
  #ifndef CYTHON_PEP489_MULTI_PHASE_INIT
    #define CYTHON_PEP489_MULTI_PHASE_INIT 1
  #endif
  #ifndef CYTHON_USE_MODULE_STATE
    #define CYTHON_USE_MODULE_STATE 0
  #endif
  #ifndef CYTHON_USE_SYS_MONITORING
    #define CYTHON_USE_SYS_MONITORING (PY_VERSION_HEX >= 0x030d00B1)
  #endif
  #ifndef CYTHON_USE_TP_FINALIZE
    #define CYTHON_USE_TP_FINALIZE 1
  #endif
  #ifndef CYTHON_USE_AM_SEND
    #define CYTHON_USE_AM_SEND 1
  #endif
  #if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING
    #undef CYTHON_USE_DICT_VERSIONS
    #define CYTHON_USE_DICT_VERSIONS 0
  #elif !defined(CYTHON_USE_DICT_VERSIONS)
    #define CYTHON_USE_DICT_VERSIONS  (PY_VERSION_HEX < 0x030C00A5 && !CYTHON_USE_MODULE_STATE)
  #endif
  #ifndef CYTHON_USE_EXC_INFO_STACK
    #define CYTHON_USE_EXC_INFO_STACK 1
  #endif
  #ifndef CYTHON_UPDATE_DESCRIPTOR_DOC
    #define CYTHON_UPDATE_DESCRIPTOR_DOC 1
  #endif
  #ifndef CYTHON_USE_FREELISTS
    #define CYTHON_USE_FREELISTS (!CYTHON_COMPILING_IN_CPYTHON_FREETHREADING)
  #endif
#endif
#ifndef CYTHON_FAST_PYCCALL
#define CYTHON_FAST_PYCCALL  CYTHON_FAST_PYCALL
#endif
#ifndef CYTHON_VECTORCALL
#if CYTHON_COMPILING_IN_LIMITED_API
#define CYTHON_VECTORCALL  (__PYX_LIMITED_VERSION_HEX >= 0x030C0000)
#else
#define CYTHON_VECTORCALL  (CYTHON_FAST_PYCCALL && PY_VERSION_HEX >= 0x030800B1)
#endif
#endif
#define CYTHON_BACKPORT_VECTORCALL (CYTHON_METH_FASTCALL && PY_VERSION_HEX < 0x030800B1)
#if CYTHON_USE_PYLONG_INTERNALS
  #undef SHIFT
  #undef BASE
  #undef MASK
  #ifdef SIZEOF_VOID_P
    enum { __pyx_check_sizeof_voidp = 1 / (int)(SIZEOF_VOID_P == sizeof(void*)) };
  #endif
#endif
#ifndef __has_attribute
  #define __has_attribute(x) 0
#endif
#ifndef __has_cpp_attribute
  #define __has_cpp_attribute(x) 0
#endif
#ifndef CYTHON_RESTRICT
  #if defined(__GNUC__)
    #define CYTHON_RESTRICT __restrict__
  #elif defined(_MSC_VER) && _MSC_VER >= 1400
    #define CYTHON_RESTRICT __restrict
  #elif defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
    #define CYTHON_RESTRICT restrict
  #else
    #define CYTHON_RESTRICT
  #endif
#endif
#ifndef CYTHON_UNUSED
  #if defined(__cplusplus)
    /* for clang __has_cpp_attribute(maybe_unused) is true even before C++17
     * but leads to warnings with -pedantic, since it is a C++17 feature */
    #if ((defined(_MSVC_LANG) && _MSVC_LANG >= 201703L) || __cplusplus >= 201703L)
      #if __has_cpp_attribute(maybe_unused)
        #define CYTHON_UNUSED [[maybe_unused]]
      #endif
    #endif
  #endif
#endif
#ifndef CYTHON_UNUSED
# if defined(__GNUC__)
#   if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4))
#     define CYTHON_UNUSED __attribute__ ((__unused__))
#   else
#     define CYTHON_UNUSED
#   endif
# elif defined(__ICC) || (defined(__INTEL_COMPILER) && !defined(_MSC_VER))
#   define CYTHON_UNUSED __attribute__ ((__unused__))
# else
#   define CYTHON_UNUSED
# endif
#endif
#ifndef CYTHON_UNUSED_VAR
#  if defined(__cplusplus)
     template<class T> void CYTHON_UNUSED_VAR( const T& ) { }
#  else
#    define CYTHON_UNUSED_VAR(x) (void)(x)
#  endif
#endif
#ifndef CYTHON_MAYBE_UNUSED_VAR
  #define CYTHON_MAYBE_UNUSED_VAR(x) CYTHON_UNUSED_VAR(x)
#endif
#ifndef CYTHON_NCP_UNUSED
# if CYTHON_COMPILING_IN_CPYTHON && !CYTHON_COMPILING_IN_CPYTHON_FREETHREADING
#  define CYTHON_NCP_UNUSED
# else
#  define CYTHON_NCP_UNUSED CYTHON_UNUSED
# endif
#endif
#ifndef CYTHON_USE_CPP_STD_MOVE
  #if defined(__cplusplus) && (\
    __cplusplus >= 201103L || (defined(_MSC_VER) && _MSC_VER >= 1600))
    #define CYTHON_USE_CPP_STD_MOVE 1
  #else
    #define CYTHON_USE_CPP_STD_MOVE 0
  #endif
#endif
#define __Pyx_void_to_None(void_result) ((void)(void_result), Py_INCREF(Py_None), Py_None)
#ifdef _MSC_VER
    #ifndef _MSC_STDINT_H_
        #if _MSC_VER < 1300
            typedef unsigned char     uint8_t;
            typedef unsigned short    uint16_t;
            typedef unsigned int      uint32_t;
        #else
            typedef unsigned __int8   uint8_t;
            typedef unsigned __int16  uint16_t;
            typedef unsigned __int32  uint32_t;
        #endif
    #endif
    #if _MSC_VER < 1300
        #ifdef _WIN64
            typedef unsigned long long  __pyx_uintptr_t;
        #else
            typedef unsigned int        __pyx_uintptr_t;
        #endif
    #else
        #ifdef _WIN64
            typedef unsigned __int64    __pyx_uintptr_t;
        #else
            typedef unsigned __int32    __pyx_uintptr_t;
        #endif
    #endif
#else
    #include <stdint.h>
    typedef uintptr_t  __pyx_uintptr_t;
#endif
#ifndef CYTHON_FALLTHROUGH
  #if defined(__cplusplus)
    /* for clang __has_cpp_attribute(fallthrough) is true even before C++17
     * but leads to warnings with -pedantic, since it is a C++17 feature */
    #if ((defined(_MSVC_LANG) && _MSVC_LANG >= 201703L) || __cplusplus >= 201703L)
      #if __has_cpp_attribute(fallthrough)
        #define CYTHON_FALLTHROUGH [[fallthrough]]
      #endif
    #endif
    #ifndef CYTHON_FALLTHROUGH
      #if __has_cpp_attribute(clang::fallthrough)
        #define CYTHON_FALLTHROUGH [[clang::fallthrough]]
      #elif __has_cpp_attribute(gnu::fallthrough)
        #define CYTHON_FALLTHROUGH [[gnu::fallthrough]]
      #endif
    #endif
  #endif
  #ifndef CYTHON_FALLTHROUGH
    #if __has_attribute(fallthrough)
      #define CYTHON_FALLTHROUGH __attribute__((fallthrough))
    #else
      #define CYTHON_FALLTHROUGH
    #endif
  #endif
  #if defined(__clang__) && defined(__apple_build_version__)
    #if __apple_build_version__ < 7000000
      #undef  CYTHON_FALLTHROUGH
      #define CYTHON_FALLTHROUGH
    #endif
  #endif
#endif
#ifndef Py_UNREACHABLE
  #define Py_UNREACHABLE()  assert(0); abort()
#endif
#ifdef __cplusplus
  template <typename T>
  struct __PYX_IS_UNSIGNED_IMPL {static const bool value = T(0) < T(-1);};
  #define __PYX_IS_UNSIGNED(type) (__PYX_IS_UNSIGNED_IMPL<type>::value)
#else
  #define __PYX_IS_UNSIGNED(type) (((type)-1) > 0)
#endif
#if CYTHON_COMPILING_IN_PYPY == 1
  #define __PYX_NEED_TP_PRINT_SLOT  (PY_VERSION_HEX >= 0x030800b4 && PY_VERSION_HEX < 0x030A0000)
#else
  #define __PYX_NEED_TP_PRINT_SLOT  (PY_VERSION_HEX >= 0x030800b4 && PY_VERSION_HEX < 0x03090000)
#endif
#define __PYX_REINTERPRET_FUNCION(func_pointer, other_pointer) ((func_pointer)(void(*)(void))(other_pointer))

/* CInitCode */
#ifndef CYTHON_INLINE
  #if defined(__clang__)
    #define CYTHON_INLINE __inline__ __attribute__ ((__unused__))
  #elif defined(__GNUC__)
    #define CYTHON_INLINE __inline__
  #elif defined(_MSC_VER)
    #define CYTHON_INLINE __inline
  #elif defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
    #define CYTHON_INLINE inline
  #else
    #define CYTHON_INLINE
  #endif
#endif

/* PythonCompatibility */
#define __PYX_BUILD_PY_SSIZE_T "n"
#define CYTHON_FORMAT_SSIZE_T "z"
#define __Pyx_BUILTIN_MODULE_NAME "builtins"
#define __Pyx_DefaultClassType PyType_Type
#if CYTHON_COMPILING_IN_LIMITED_API
    #ifndef CO_OPTIMIZED
    static int CO_OPTIMIZED;
    #endif
    #ifndef CO_NEWLOCALS
    static int CO_NEWLOCALS;
    #endif
    #ifndef CO_VARARGS
    static int CO_VARARGS;
    #endif
    #ifndef CO_VARKEYWORDS
    static int CO_VARKEYWORDS;
    #endif
    #ifndef CO_ASYNC_GENERATOR
    static int CO_ASYNC_GENERATOR;
    #endif
    #ifndef CO_GENERATOR
    static int CO_GENERATOR;
    #endif
    #ifndef CO_COROUTINE
    static int CO_COROUTINE;
    #endif
#else
    #ifndef CO_COROUTINE
      #define CO_COROUTINE 0x80
    #endif
    #ifndef CO_ASYNC_GENERATOR
      #define CO_ASYNC_GENERATOR 0x200
    #endif
#endif
static int __Pyx_init_co_variables(void);
#if PY_VERSION_HEX >= 0x030900A4 || defined(Py_IS_TYPE)
  #define __Pyx_IS_TYPE(ob, type) Py_IS_TYPE(ob, type)
#else
  #define __Pyx_IS_TYPE(ob, type) (((const PyObject*)ob)->ob_type == (type))
#endif
#if PY_VERSION_HEX >= 0x030A00B1 || defined(Py_Is)
  #define __Pyx_Py_Is(x, y)  Py_Is(x, y)
#else
  #define __Pyx_Py_Is(x, y) ((x) == (y))
#endif
#if PY_VERSION_HEX >= 0x030A00B1 || defined(Py_IsNone)
  #define __Pyx_Py_IsNone(ob) Py_IsNone(ob)
#else
  #define __Pyx_Py_IsNone(ob) __Pyx_Py_Is((ob), Py_None)
#endif
#if PY_VERSION_HEX >= 0x030A00B1 || defined(Py_IsTrue)
  #define __Pyx_Py_IsTrue(ob) Py_IsTrue(ob)
#else
  #define __Pyx_Py_IsTrue(ob) __Pyx_Py_Is((ob), Py_True)
#endif
#if PY_VERSION_HEX >= 0x030A00B1 || defined(Py_IsFalse)
  #define __Pyx_Py_IsFalse(ob) Py_IsFalse(ob)
#else
  #define __Pyx_Py_IsFalse(ob) __Pyx_Py_Is((ob), Py_False)
#endif
#define __Pyx_NoneAsNull(obj)  (__Pyx_Py_IsNone(obj) ? NULL : (obj))
#if PY_VERSION_HEX >= 0x030900F0 && !CYTHON_COMPILING_IN_PYPY
  #define __Pyx_PyObject_GC_IsFinalized(o) PyObject_GC_IsFinalized(o)
#else
  #define __Pyx_PyObject_GC_IsFinalized(o) _PyGC_FINALIZED(o)
#endif
#ifndef Py_TPFLAGS_CHECKTYPES
  #define Py_TPFLAGS_CHECKTYPES 0
#endif
#ifndef Py_TPFLAGS_HAVE_INDEX
  #define Py_TPFLAGS_HAVE_INDEX 0
#endif
#ifndef Py_TPFLAGS_HAVE_NEWBUFFER
  #define Py_TPFLAGS_HAVE_NEWBUFFER 0
#endif
#ifndef Py_TPFLAGS_HAVE_FINALIZE
  #define Py_TPFLAGS_HAVE_FINALIZE 0
#endif
#ifndef Py_TPFLAGS_SEQUENCE
  #define Py_TPFLAGS_SEQUENCE 0
#endif
#ifndef Py_TPFLAGS_MAPPING
  #define Py_TPFLAGS_MAPPING 0
#endif
#ifndef METH_STACKLESS
  #define METH_STACKLESS 0
#endif
#ifndef METH_FASTCALL
  #ifndef METH_FASTCALL
     #define METH_FASTCALL 0x80
  #endif
  typedef PyObject *(*__Pyx_PyCFunctionFast) (PyObject *self, PyObject *const *args, Py_ssize_t nargs);
  typedef PyObject *(*__Pyx_PyCFunctionFastWithKeywords) (PyObject *self, PyObject *const *args,
                                                          Py_ssize_t nargs, PyObject *kwnames);
#else
  #if PY_VERSION_HEX >= 0x030d00A4
  #  define __Pyx_PyCFunctionFast PyCFunctionFast
  #  define __Pyx_PyCFunctionFastWithKeywords PyCFunctionFastWithKeywords
  #else
  #  define __Pyx_PyCFunctionFast _PyCFunctionFast
  #  define __Pyx_PyCFunctionFastWithKeywords _PyCFunctionFastWithKeywords
  #endif
#endif
#if CYTHON_METH_FASTCALL
  #define __Pyx_METH_FASTCALL METH_FASTCALL
  #define __Pyx_PyCFunction_FastCall __Pyx_PyCFunctionFast
  #define __Pyx_PyCFunction_FastCallWithKeywords __Pyx_PyCFunctionFastWithKeywords
#else
  #define __Pyx_METH_FASTCALL METH_VARARGS
  #define __Pyx_PyCFunction_FastCall PyCFunction
  #define __Pyx_PyCFunction_FastCallWithKeywords PyCFunctionWithKeywords
#endif
#if CYTHON_VECTORCALL
  #define __pyx_vectorcallfunc vectorcallfunc
  #define __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET  PY_VECTORCALL_ARGUMENTS_OFFSET
  #define __Pyx_PyVectorcall_NARGS(n)  PyVectorcall_NARGS((size_t)(n))
#elif CYTHON_BACKPORT_VECTORCALL
  typedef PyObject *(*__pyx_vectorcallfunc)(PyObject *callable, PyObject *const *args,
                                            size_t nargsf, PyObject *kwnames);
  #define __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET  ((size_t)1 << (8 * sizeof(size_t) - 1))
  #define __Pyx_PyVectorcall_NARGS(n)  ((Py_ssize_t)(((size_t)(n)) & ~__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET))
#else
  #define __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET  0
  #define __Pyx_PyVectorcall_NARGS(n)  ((Py_ssize_t)(n))
#endif
#if PY_VERSION_HEX >= 0x030900B1
#define __Pyx_PyCFunction_CheckExact(func)  PyCFunction_CheckExact(func)
#else
#define __Pyx_PyCFunction_CheckExact(func)  PyCFunction_Check(func)
#endif
#define __Pyx_CyOrPyCFunction_Check(func)  PyCFunction_Check(func)
#if CYTHON_COMPILING_IN_CPYTHON
#define __Pyx_CyOrPyCFunction_GET_FUNCTION(func)  (((PyCFunctionObject*)(func))->m_ml->ml_meth)
#elif !CYTHON_COMPILING_IN_LIMITED_API
#define __Pyx_CyOrPyCFunction_GET_FUNCTION(func)  PyCFunction_GET_FUNCTION(func)
#endif
#if CYTHON_COMPILING_IN_CPYTHON
#define __Pyx_CyOrPyCFunction_GET_FLAGS(func)  (((PyCFunctionObject*)(func))->m_ml->ml_flags)
static CYTHON_INLINE PyObject* __Pyx_CyOrPyCFunction_GET_SELF(PyObject *func) {
    return (__Pyx_CyOrPyCFunction_GET_FLAGS(func) & METH_STATIC) ? NULL : ((PyCFunctionObject*)func)->m_self;
}
#endif
static CYTHON_INLINE int __Pyx__IsSameCFunction(PyObject *func, void (*cfunc)(void)) {
#if CYTHON_COMPILING_IN_LIMITED_API
    return PyCFunction_Check(func) && PyCFunction_GetFunction(func) == (PyCFunction) cfunc;
#else
    return PyCFunction_Check(func) && PyCFunction_GET_FUNCTION(func) == (PyCFunction) cfunc;
#endif
}
#define __Pyx_IsSameCFunction(func, cfunc)   __Pyx__IsSameCFunction(func, cfunc)
#if __PYX_LIMITED_VERSION_HEX < 0x03090000
  #define __Pyx_PyType_FromModuleAndSpec(m, s, b)  ((void)m, PyType_FromSpecWithBases(s, b))
  typedef PyObject *(*__Pyx_PyCMethod)(PyObject *, PyTypeObject *, PyObject *const *, size_t, PyObject *);
#else
  #define __Pyx_PyType_FromModuleAndSpec(m, s, b)  PyType_FromModuleAndSpec(m, s, b)
  #define __Pyx_PyCMethod  PyCMethod
#endif
#ifndef METH_METHOD
  #define METH_METHOD 0x200
#endif
#if CYTHON_COMPILING_IN_PYPY && !defined(PyObject_Malloc)
  #define PyObject_Malloc(s)   PyMem_Malloc(s)
  #define PyObject_Free(p)     PyMem_Free(p)
  #define PyObject_Realloc(p)  PyMem_Realloc(p)
#endif
#if CYTHON_COMPILING_IN_LIMITED_API
  #define __Pyx_PyFrame_SetLineNumber(frame, lineno)
#elif CYTHON_COMPILING_IN_GRAAL
  #define __Pyx_PyCode_HasFreeVars(co)  (PyCode_GetNumFree(co) > 0)
  #define __Pyx_PyFrame_SetLineNumber(frame, lineno) _PyFrame_SetLineNumber((frame), (lineno))
#else
  #define __Pyx_PyCode_HasFreeVars(co)  (PyCode_GetNumFree(co) > 0)
  #define __Pyx_PyFrame_SetLineNumber(frame, lineno)  (frame)->f_lineno = (lineno)
#endif
#if CYTHON_COMPILING_IN_LIMITED_API
  #define __Pyx_PyThreadState_Current PyThreadState_Get()
#elif !CYTHON_FAST_THREAD_STATE
  #define __Pyx_PyThreadState_Current PyThreadState_GET()
#elif PY_VERSION_HEX >= 0x030d00A1
  #define __Pyx_PyThreadState_Current PyThreadState_GetUnchecked()
#else
  #define __Pyx_PyThreadState_Current _PyThreadState_UncheckedGet()
#endif
#if CYTHON_USE_MODULE_STATE
static CYTHON_INLINE void *__Pyx__PyModule_GetState(PyObject *op)
{
    void *result;
    result = PyModule_GetState(op);
    if (!result)
        Py_FatalError("Couldn't find the module state");
    return result;
}
#define __Pyx_PyModule_GetState(o) (__pyx_mstatetype *)__Pyx__PyModule_GetState(o)
#else
#define __Pyx_PyModule_GetState(op) ((void)op,__pyx_mstate_global)
#endif
#define __Pyx_PyObject_GetSlot(obj, name, func_ctype)  __Pyx_PyType_GetSlot(Py_TYPE((PyObject *) obj), name, func_ctype)
#define __Pyx_PyObject_TryGetSlot(obj, name, func_ctype) __Pyx_PyType_TryGetSlot(Py_TYPE(obj), name, func_ctype)
#define __Pyx_PyObject_GetSubSlot(obj, sub, name, func_ctype) __Pyx_PyType_GetSubSlot(Py_TYPE(obj), sub, name, func_ctype)
#define __Pyx_PyObject_TryGetSubSlot(obj, sub, name, func_ctype) __Pyx_PyType_TryGetSubSlot(Py_TYPE(obj), sub, name, func_ctype)
#if CYTHON_USE_TYPE_SLOTS
  #define __Pyx_PyType_GetSlot(type, name, func_ctype)  ((type)->name)
  #define __Pyx_PyType_TryGetSlot(type, name, func_ctype) __Pyx_PyType_GetSlot(type, name, func_ctype)
  #define __Pyx_PyType_GetSubSlot(type, sub, name, func_ctype) (((type)->sub) ? ((type)->sub->name) : NULL)
  #define __Pyx_PyType_TryGetSubSlot(type, sub, name, func_ctype) __Pyx_PyType_GetSubSlot(type, sub, name, func_ctype)
#else
  #define __Pyx_PyType_GetSlot(type, name, func_ctype)  ((func_ctype) PyType_GetSlot((type), Py_##name))
  #define __Pyx_PyType_TryGetSlot(type, name, func_ctype)\
    ((__PYX_LIMITED_VERSION_HEX >= 0x030A0000 ||\
     (PyType_GetFlags(type) & Py_TPFLAGS_HEAPTYPE) || __Pyx_get_runtime_version() >= 0x030A0000) ?\
     __Pyx_PyType_GetSlot(type, name, func_ctype) : NULL)
  #define __Pyx_PyType_GetSubSlot(obj, sub, name, func_ctype) __Pyx_PyType_GetSlot(obj, name, func_ctype)
  #define __Pyx_PyType_TryGetSubSlot(obj, sub, name, func_ctype) __Pyx_PyType_TryGetSlot(obj, name, func_ctype)
#endif
#if CYTHON_COMPILING_IN_CPYTHON || defined(_PyDict_NewPresized)
#define __Pyx_PyDict_NewPresized(n)  ((n <= 8) ? PyDict_New() : _PyDict_NewPresized(n))
#else
#define __Pyx_PyDict_NewPresized(n)  PyDict_New()
#endif
#define __Pyx_PyNumber_Divide(x,y)         PyNumber_TrueDivide(x,y)
#define __Pyx_PyNumber_InPlaceDivide(x,y)  PyNumber_InPlaceTrueDivide(x,y)
#if CYTHON_COMPILING_IN_CPYTHON && CYTHON_USE_UNICODE_INTERNALS
#define __Pyx_PyDict_GetItemStrWithError(dict, name)  _PyDict_GetItem_KnownHash(dict, name, ((PyASCIIObject *) name)->hash)
static CYTHON_INLINE PyObject * __Pyx_PyDict_GetItemStr(PyObject *dict, PyObject *name) {
    PyObject *res = __Pyx_PyDict_GetItemStrWithError(dict, name);
    if (res == NULL) PyErr_Clear();
    return res;
}
#elif !CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07020000
#define __Pyx_PyDict_GetItemStrWithError  PyDict_GetItemWithError
#define __Pyx_PyDict_GetItemStr           PyDict_GetItem
#else
static CYTHON_INLINE PyObject * __Pyx_PyDict_GetItemStrWithError(PyObject *dict, PyObject *name) {
#if CYTHON_COMPILING_IN_PYPY
    return PyDict_GetItem(dict, name);
#else
    PyDictEntry *ep;
    PyDictObject *mp = (PyDictObject*) dict;
    long hash = ((PyStringObject *) name)->ob_shash;
    assert(hash != -1);
    ep = (mp->ma_lookup)(mp, name, hash);
    if (ep == NULL) {
        return NULL;
    }
    return ep->me_value;
#endif
}
#define __Pyx_PyDict_GetItemStr           PyDict_GetItem
#endif
#if CYTHON_USE_TYPE_SLOTS
  #define __Pyx_PyType_GetFlags(tp)   (((PyTypeObject *)tp)->tp_flags)
  #define __Pyx_PyType_HasFeature(type, feature)  ((__Pyx_PyType_GetFlags(type) & (feature)) != 0)
#else
  #define __Pyx_PyType_GetFlags(tp)   (PyType_GetFlags((PyTypeObject *)tp))
  #define __Pyx_PyType_HasFeature(type, feature)  PyType_HasFeature(type, feature)
#endif
#define __Pyx_PyObject_GetIterNextFunc(iterator)  __Pyx_PyObject_GetSlot(iterator, tp_iternext, iternextfunc)
#if CYTHON_USE_TYPE_SPECS && PY_VERSION_HEX >= 0x03080000
#define __Pyx_PyHeapTypeObject_GC_Del(obj)  {\
    PyTypeObject *type = Py_TYPE((PyObject*)obj);\
    assert(__Pyx_PyType_HasFeature(type, Py_TPFLAGS_HEAPTYPE));\
    PyObject_GC_Del(obj);\
    Py_DECREF(type);\
}
#else
#define __Pyx_PyHeapTypeObject_GC_Del(obj)  PyObject_GC_Del(obj)
#endif
#if CYTHON_COMPILING_IN_LIMITED_API
  #define __Pyx_PyUnicode_READY(op)       (0)
  #define __Pyx_PyUnicode_READ_CHAR(u, i) PyUnicode_ReadChar(u, i)
  #define __Pyx_PyUnicode_MAX_CHAR_VALUE(u)   ((void)u, 1114111U)
  #define __Pyx_PyUnicode_KIND(u)         ((void)u, (0))
  #define __Pyx_PyUnicode_DATA(u)         ((void*)u)
  #define __Pyx_PyUnicode_READ(k, d, i)   ((void)k, PyUnicode_ReadChar((PyObject*)(d), i))
  #define __Pyx_PyUnicode_IS_TRUE(u)      (0 != PyUnicode_GetLength(u))
#else
  #if PY_VERSION_HEX >= 0x030C0000
    #define __Pyx_PyUnicode_READY(op)       (0)
  #else
    #define __Pyx_PyUnicode_READY(op)       (likely(PyUnicode_IS_READY(op)) ?\
                                                0 : _PyUnicode_Ready((PyObject *)(op)))
  #endif
  #define __Pyx_PyUnicode_READ_CHAR(u, i) PyUnicode_READ_CHAR(u, i)
  #define __Pyx_PyUnicode_MAX_CHAR_VALUE(u)   PyUnicode_MAX_CHAR_VALUE(u)
  #define __Pyx_PyUnicode_KIND(u)         ((int)PyUnicode_KIND(u))
  #define __Pyx_PyUnicode_DATA(u)         PyUnicode_DATA(u)
  #define __Pyx_PyUnicode_READ(k, d, i)   PyUnicode_READ(k, d, i)
  #define __Pyx_PyUnicode_WRITE(k, d, i, ch)  PyUnicode_WRITE(k, d, i, (Py_UCS4) ch)
  #if PY_VERSION_HEX >= 0x030C0000
    #define __Pyx_PyUnicode_IS_TRUE(u)      (0 != PyUnicode_GET_LENGTH(u))
  #else
    #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x03090000
    #define __Pyx_PyUnicode_IS_TRUE(u)      (0 != (likely(PyUnicode_IS_READY(u)) ? PyUnicode_GET_LENGTH(u) : ((PyCompactUnicodeObject *)(u))->wstr_length))
    #else
    #define __Pyx_PyUnicode_IS_TRUE(u)      (0 != (likely(PyUnicode_IS_READY(u)) ? PyUnicode_GET_LENGTH(u) : PyUnicode_GET_SIZE(u)))
    #endif
  #endif
#endif
#if CYTHON_COMPILING_IN_PYPY
  #define __Pyx_PyUnicode_Concat(a, b)      PyNumber_Add(a, b)
  #define __Pyx_PyUnicode_ConcatSafe(a, b)  PyNumber_Add(a, b)
#else
  #define __Pyx_PyUnicode_Concat(a, b)      PyUnicode_Concat(a, b)
  #define __Pyx_PyUnicode_ConcatSafe(a, b)  ((unlikely((a) == Py_None) || unlikely((b) == Py_None)) ?\
      PyNumber_Add(a, b) : __Pyx_PyUnicode_Concat(a, b))
#endif
#if CYTHON_COMPILING_IN_PYPY
  #if !defined(PyUnicode_DecodeUnicodeEscape)
    #define PyUnicode_DecodeUnicodeEscape(s, size, errors)  PyUnicode_Decode(s, size, "unicode_escape", errors)
  #endif
  #if !defined(PyUnicode_Contains)
    #define PyUnicode_Contains(u, s)  PySequence_Contains(u, s)
  #endif
  #if !defined(PyByteArray_Check)
    #define PyByteArray_Check(obj)  PyObject_TypeCheck(obj, &PyByteArray_Type)
  #endif
  #if !defined(PyObject_Format)
    #define PyObject_Format(obj, fmt)  PyObject_CallMethod(obj, "__format__", "O", fmt)
  #endif
#endif
#define __Pyx_PyUnicode_FormatSafe(a, b)  ((unlikely((a) == Py_None || (PyUnicode_Check(b) && !PyUnicode_CheckExact(b)))) ? PyNumber_Remainder(a, b) : PyUnicode_Format(a, b))
#if CYTHON_COMPILING_IN_CPYTHON
  #define __Pyx_PySequence_ListKeepNew(obj)\
    (likely(PyList_CheckExact(obj) && Py_REFCNT(obj) == 1) ? __Pyx_NewRef(obj) : PySequence_List(obj))
#else
  #define __Pyx_PySequence_ListKeepNew(obj)  PySequence_List(obj)
#endif
#ifndef PySet_CheckExact
  #define PySet_CheckExact(obj)        __Pyx_IS_TYPE(obj, &PySet_Type)
#endif
#if PY_VERSION_HEX >= 0x030900A4
  #define __Pyx_SET_REFCNT(obj, refcnt) Py_SET_REFCNT(obj, refcnt)
  #define __Pyx_SET_SIZE(obj, size) Py_SET_SIZE(obj, size)
#else
  #define __Pyx_SET_REFCNT(obj, refcnt) Py_REFCNT(obj) = (refcnt)
  #define __Pyx_SET_SIZE(obj, size) Py_SIZE(obj) = (size)
#endif
#if CYTHON_AVOID_BORROWED_REFS || CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS
  #if __PYX_LIMITED_VERSION_HEX >= 0x030d0000
    #define __Pyx_PyList_GetItemRef(o, i) PyList_GetItemRef(o, i)
  #elif CYTHON_COMPILING_IN_LIMITED_API || !CYTHON_ASSUME_SAFE_MACROS
    #define __Pyx_PyList_GetItemRef(o, i) (likely((i) >= 0) ? PySequence_GetItem(o, i) : (PyErr_SetString(PyExc_IndexError, "list index out of range"), (PyObject*)NULL))
  #else
    #define __Pyx_PyList_GetItemRef(o, i) PySequence_ITEM(o, i)
  #endif
#elif CYTHON_COMPILING_IN_LIMITED_API || !CYTHON_ASSUME_SAFE_MACROS
  #if __PYX_LIMITED_VERSION_HEX >= 0x030d0000
    #define __Pyx_PyList_GetItemRef(o, i) PyList_GetItemRef(o, i)
  #else
    #define __Pyx_PyList_GetItemRef(o, i) __Pyx_XNewRef(PyList_GetItem(o, i))
  #endif
#else
  #define __Pyx_PyList_GetItemRef(o, i) __Pyx_NewRef(PyList_GET_ITEM(o, i))
#endif
#if __PYX_LIMITED_VERSION_HEX >= 0x030d0000
#define __Pyx_PyDict_GetItemRef(dict, key, result) PyDict_GetItemRef(dict, key, result)
#elif CYTHON_AVOID_BORROWED_REFS || CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS
static CYTHON_INLINE int __Pyx_PyDict_GetItemRef(PyObject *dict, PyObject *key, PyObject **result) {
  *result = PyObject_GetItem(dict, key);
  if (*result == NULL) {
    if (PyErr_ExceptionMatches(PyExc_KeyError)) {
      PyErr_Clear();
      return 0;
    }
    return -1;
  }
  return 1;
}
#else
static CYTHON_INLINE int __Pyx_PyDict_GetItemRef(PyObject *dict, PyObject *key, PyObject **result) {
  *result = PyDict_GetItemWithError(dict, key);
  if (*result == NULL) {
    return PyErr_Occurred() ? -1 : 0;
  }
  Py_INCREF(*result);
  return 1;
}
#endif
#if defined(CYTHON_DEBUG_VISIT_CONST) && CYTHON_DEBUG_VISIT_CONST
  #define __Pyx_VISIT_CONST(obj)  Py_VISIT(obj)
#else
  #define __Pyx_VISIT_CONST(obj)
#endif
#if CYTHON_ASSUME_SAFE_MACROS
  #define __Pyx_PySequence_ITEM(o, i) PySequence_ITEM(o, i)
  #define __Pyx_PySequence_SIZE(seq)  Py_SIZE(seq)
  #define __Pyx_PyTuple_SET_ITEM(o, i, v) (PyTuple_SET_ITEM(o, i, v), (0))
  #define __Pyx_PyTuple_GET_ITEM(o, i) PyTuple_GET_ITEM(o, i)
  #define __Pyx_PyList_SET_ITEM(o, i, v) (PyList_SET_ITEM(o, i, v), (0))
  #define __Pyx_PyList_GET_ITEM(o, i) PyList_GET_ITEM(o, i)
#else
  #define __Pyx_PySequence_ITEM(o, i) PySequence_GetItem(o, i)
  #define __Pyx_PySequence_SIZE(seq)  PySequence_Size(seq)
  #define __Pyx_PyTuple_SET_ITEM(o, i, v) PyTuple_SetItem(o, i, v)
  #define __Pyx_PyTuple_GET_ITEM(o, i) PyTuple_GetItem(o, i)
  #define __Pyx_PyList_SET_ITEM(o, i, v) PyList_SetItem(o, i, v)
  #define __Pyx_PyList_GET_ITEM(o, i) PyList_GetItem(o, i)
#endif
#if CYTHON_ASSUME_SAFE_SIZE
  #define __Pyx_PyTuple_GET_SIZE(o) PyTuple_GET_SIZE(o)
  #define __Pyx_PyList_GET_SIZE(o) PyList_GET_SIZE(o)
  #define __Pyx_PySet_GET_SIZE(o) PySet_GET_SIZE(o)
  #define __Pyx_PyBytes_GET_SIZE(o) PyBytes_GET_SIZE(o)
  #define __Pyx_PyByteArray_GET_SIZE(o) PyByteArray_GET_SIZE(o)
  #define __Pyx_PyUnicode_GET_LENGTH(o) PyUnicode_GET_LENGTH(o)
#else
  #define __Pyx_PyTuple_GET_SIZE(o) PyTuple_Size(o)
  #define __Pyx_PyList_GET_SIZE(o) PyList_Size(o)
  #define __Pyx_PySet_GET_SIZE(o) PySet_Size(o)
  #define __Pyx_PyBytes_GET_SIZE(o) PyBytes_Size(o)
  #define __Pyx_PyByteArray_GET_SIZE(o) PyByteArray_Size(o)
  #define __Pyx_PyUnicode_GET_LENGTH(o) PyUnicode_GetLength(o)
#endif
#if __PYX_LIMITED_VERSION_HEX >= 0x030d0000
  #define __Pyx_PyImport_AddModuleRef(name) PyImport_AddModuleRef(name)
#else
  static CYTHON_INLINE PyObject *__Pyx_PyImport_AddModuleRef(const char *name) {
      PyObject *module = PyImport_AddModule(name);
      Py_XINCREF(module);
      return module;
  }
#endif
#if CYTHON_COMPILING_IN_PYPY && !defined(PyUnicode_InternFromString)
  #define PyUnicode_InternFromString(s) PyUnicode_FromString(s)
#endif
#define __Pyx_PyLong_FromHash_t PyLong_FromSsize_t
#define __Pyx_PyLong_AsHash_t   __Pyx_PyIndex_AsSsize_t
#if __PYX_LIMITED_VERSION_HEX >= 0x030A0000
    #define __Pyx_PySendResult PySendResult
#else
    typedef enum {
        PYGEN_RETURN = 0,
        PYGEN_ERROR = -1,
        PYGEN_NEXT = 1,
    } __Pyx_PySendResult;
#endif
#if CYTHON_COMPILING_IN_LIMITED_API || PY_VERSION_HEX < 0x030A00A3
  typedef __Pyx_PySendResult (*__Pyx_pyiter_sendfunc)(PyObject *iter, PyObject *value, PyObject **result);
#else
  #define __Pyx_pyiter_sendfunc sendfunc
#endif
#if !CYTHON_USE_AM_SEND
#define __PYX_HAS_PY_AM_SEND 0
#elif __PYX_LIMITED_VERSION_HEX >= 0x030A0000
#define __PYX_HAS_PY_AM_SEND 1
#else
#define __PYX_HAS_PY_AM_SEND 2  // our own backported implementation
#endif
#if __PYX_HAS_PY_AM_SEND < 2
    #define __Pyx_PyAsyncMethodsStruct PyAsyncMethods
#else
    typedef struct {
        unaryfunc am_await;
        unaryfunc am_aiter;
        unaryfunc am_anext;
        __Pyx_pyiter_sendfunc am_send;
    } __Pyx_PyAsyncMethodsStruct;
    #define __Pyx_SlotTpAsAsync(s) ((PyAsyncMethods*)(s))
#endif
#if CYTHON_USE_AM_SEND && PY_VERSION_HEX < 0x030A00F0
    #define __Pyx_TPFLAGS_HAVE_AM_SEND (1UL << 21)
#else
    #define __Pyx_TPFLAGS_HAVE_AM_SEND (0)
#endif
#if PY_VERSION_HEX >= 0x03090000
#define __Pyx_PyInterpreterState_Get() PyInterpreterState_Get()
#else
#define __Pyx_PyInterpreterState_Get() PyThreadState_Get()->interp
#endif
#if CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030A0000
#ifdef __cplusplus
extern "C"
#endif
PyAPI_FUNC(void *) PyMem_Calloc(size_t nelem, size_t elsize);
#endif
#if CYTHON_COMPILING_IN_LIMITED_API
static int __Pyx_init_co_variable(PyObject *inspect, const char* name, int *write_to) {
    int value;
    PyObject *py_value = PyObject_GetAttrString(inspect, name);
    if (!py_value) return 0;
    value = (int) PyLong_AsLong(py_value);
    Py_DECREF(py_value);
    *write_to = value;
    return value != -1 || !PyErr_Occurred();
}
static int __Pyx_init_co_variables(void) {
    PyObject *inspect;
    int result;
    inspect = PyImport_ImportModule("inspect");
    result =
#if !defined(CO_OPTIMIZED)
        __Pyx_init_co_variable(inspect, "CO_OPTIMIZED", &CO_OPTIMIZED) &&
#endif
#if !defined(CO_NEWLOCALS)
        __Pyx_init_co_variable(inspect, "CO_NEWLOCALS", &CO_NEWLOCALS) &&
#endif
#if !defined(CO_VARARGS)
        __Pyx_init_co_variable(inspect, "CO_VARARGS", &CO_VARARGS) &&
#endif
#if !defined(CO_VARKEYWORDS)
        __Pyx_init_co_variable(inspect, "CO_VARKEYWORDS", &CO_VARKEYWORDS) &&
#endif
#if !defined(CO_ASYNC_GENERATOR)
        __Pyx_init_co_variable(inspect, "CO_ASYNC_GENERATOR", &CO_ASYNC_GENERATOR) &&
#endif
#if !defined(CO_GENERATOR)
        __Pyx_init_co_variable(inspect, "CO_GENERATOR", &CO_GENERATOR) &&
#endif
#if !defined(CO_COROUTINE)
        __Pyx_init_co_variable(inspect, "CO_COROUTINE", &CO_COROUTINE) &&
#endif
        1;
    Py_DECREF(inspect);
    return result ? 0 : -1;
}
#else
static int __Pyx_init_co_variables(void) {
    return 0;  // It's a limited API-only feature
}
#endif

/* MathInitCode */
#if defined(_WIN32) || defined(WIN32) || defined(MS_WINDOWS)
  #ifndef _USE_MATH_DEFINES
    #define _USE_MATH_DEFINES
  #endif
#endif
#include <math.h>
#ifdef NAN
#define __PYX_NAN() ((float) NAN)
#else
static CYTHON_INLINE float __PYX_NAN() {
  float value;
  memset(&value, 0xFF, sizeof(value));
  return value;
}
#endif
#if defined(__CYGWIN__) && defined(_LDBL_EQ_DBL)
#define __Pyx_truncl trunc
#else
#define __Pyx_truncl truncl
#endif

#ifndef CYTHON_CLINE_IN_TRACEBACK_RUNTIME
#define CYTHON_CLINE_IN_TRACEBACK_RUNTIME 0
#endif
#ifndef CYTHON_CLINE_IN_TRACEBACK
#define CYTHON_CLINE_IN_TRACEBACK CYTHON_CLINE_IN_TRACEBACK_RUNTIME
#endif
#if CYTHON_CLINE_IN_TRACEBACK
#define __PYX_MARK_ERR_POS(f_index, lineno)  { __pyx_filename = __pyx_f[f_index]; (void) __pyx_filename; __pyx_lineno = lineno; (void) __pyx_lineno; __pyx_clineno = __LINE__; (void) __pyx_clineno; }
#else
#define __PYX_MARK_ERR_POS(f_index, lineno)  { __pyx_filename = __pyx_f[f_index]; (void) __pyx_filename; __pyx_lineno = lineno; (void) __pyx_lineno; (void) __pyx_clineno; }
#endif
#define __PYX_ERR(f_index, lineno, Ln_error) \
    { __PYX_MARK_ERR_POS(f_index, lineno) goto Ln_error; }

#ifdef CYTHON_EXTERN_C
    #undef __PYX_EXTERN_C
    #define __PYX_EXTERN_C CYTHON_EXTERN_C
#elif defined(__PYX_EXTERN_C)
    #ifdef _MSC_VER
    #pragma message ("Please do not define the '__PYX_EXTERN_C' macro externally. Use 'CYTHON_EXTERN_C' instead.")
    #else
    #warning Please do not define the '__PYX_EXTERN_C' macro externally. Use 'CYTHON_EXTERN_C' instead.
    #endif
#else
  #ifdef __cplusplus
    #define __PYX_EXTERN_C extern "C"
  #else
    #define __PYX_EXTERN_C extern
  #endif
#endif

#define __PYX_HAVE__unicorn_binance_rest_api__manager
#define __PYX_HAVE_API__unicorn_binance_rest_api__manager
/* Early includes */
#ifdef _OPENMP
#include <omp.h>
#endif /* _OPENMP */

#if defined(PYREX_WITHOUT_ASSERTIONS) && !defined(CYTHON_WITHOUT_ASSERTIONS)
#define CYTHON_WITHOUT_ASSERTIONS
#endif

#define __PYX_DEFAULT_STRING_ENCODING_IS_ASCII 0
#define __PYX_DEFAULT_STRING_ENCODING_IS_UTF8 0
#define __PYX_DEFAULT_STRING_ENCODING ""
#define __Pyx_PyObject_FromString __Pyx_PyBytes_FromString
#define __Pyx_PyObject_FromStringAndSize __Pyx_PyBytes_FromStringAndSize
#define __Pyx_uchar_cast(c) ((unsigned char)c)
#define __Pyx_long_cast(x) ((long)x)
#define __Pyx_fits_Py_ssize_t(v, type, is_signed)  (\
    (sizeof(type) < sizeof(Py_ssize_t))  ||\
    (sizeof(type) > sizeof(Py_ssize_t) &&\
          likely(v < (type)PY_SSIZE_T_MAX ||\
                 v == (type)PY_SSIZE_T_MAX)  &&\
          (!is_signed || likely(v > (type)PY_SSIZE_T_MIN ||\
                                v == (type)PY_SSIZE_T_MIN)))  ||\
    (sizeof(type) == sizeof(Py_ssize_t) &&\
          (is_signed || likely(v < (type)PY_SSIZE_T_MAX ||\
                               v == (type)PY_SSIZE_T_MAX)))  )
static CYTHON_INLINE int __Pyx_is_valid_index(Py_ssize_t i, Py_ssize_t limit) {
    return (size_t) i < (size_t) limit;
}
#if defined (__cplusplus) && __cplusplus >= 201103L
    #include <cstdlib>
    #define __Pyx_sst_abs(value) std::abs(value)
#elif SIZEOF_INT >= SIZEOF_SIZE_T
    #define __Pyx_sst_abs(value) abs(value)
#elif SIZEOF_LONG >= SIZEOF_SIZE_T
    #define __Pyx_sst_abs(value) labs(value)
#elif defined (_MSC_VER)
    #define __Pyx_sst_abs(value) ((Py_ssize_t)_abs64(value))
#elif defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
    #define __Pyx_sst_abs(value) llabs(value)
#elif defined (__GNUC__)
    #define __Pyx_sst_abs(value) __builtin_llabs(value)
#else
    #define __Pyx_sst_abs(value) ((value<0) ? -value : value)
#endif
static CYTHON_INLINE Py_ssize_t __Pyx_ssize_strlen(const char *s);
static CYTHON_INLINE const char* __Pyx_PyObject_AsString(PyObject*);
static CYTHON_INLINE const char* __Pyx_PyObject_AsStringAndSize(PyObject*, Py_ssize_t* length);
static CYTHON_INLINE PyObject* __Pyx_PyByteArray_FromString(const char*);
#define __Pyx_PyByteArray_FromStringAndSize(s, l) PyByteArray_FromStringAndSize((const char*)s, l)
#define __Pyx_PyBytes_FromString        PyBytes_FromString
#define __Pyx_PyBytes_FromStringAndSize PyBytes_FromStringAndSize
static CYTHON_INLINE PyObject* __Pyx_PyUnicode_FromString(const char*);
#if CYTHON_ASSUME_SAFE_MACROS
    #define __Pyx_PyBytes_AsWritableString(s)     ((char*) PyBytes_AS_STRING(s))
    #define __Pyx_PyBytes_AsWritableSString(s)    ((signed char*) PyBytes_AS_STRING(s))
    #define __Pyx_PyBytes_AsWritableUString(s)    ((unsigned char*) PyBytes_AS_STRING(s))
    #define __Pyx_PyBytes_AsString(s)     ((const char*) PyBytes_AS_STRING(s))
    #define __Pyx_PyBytes_AsSString(s)    ((const signed char*) PyBytes_AS_STRING(s))
    #define __Pyx_PyBytes_AsUString(s)    ((const unsigned char*) PyBytes_AS_STRING(s))
    #define __Pyx_PyByteArray_AsString(s) PyByteArray_AS_STRING(s)
#else
    #define __Pyx_PyBytes_AsWritableString(s)     ((char*) PyBytes_AsString(s))
    #define __Pyx_PyBytes_AsWritableSString(s)    ((signed char*) PyBytes_AsString(s))
    #define __Pyx_PyBytes_AsWritableUString(s)    ((unsigned char*) PyBytes_AsString(s))
    #define __Pyx_PyBytes_AsString(s)     ((const char*) PyBytes_AsString(s))
    #define __Pyx_PyBytes_AsSString(s)    ((const signed char*) PyBytes_AsString(s))
    #define __Pyx_PyBytes_AsUString(s)    ((const unsigned char*) PyBytes_AsString(s))
    #define __Pyx_PyByteArray_AsString(s) PyByteArray_AsString(s)
#endif
#define __Pyx_PyObject_AsWritableString(s)    ((char*)(__pyx_uintptr_t) __Pyx_PyObject_AsString(s))
#define __Pyx_PyObject_AsWritableSString(s)    ((signed char*)(__pyx_uintptr_t) __Pyx_PyObject_AsString(s))
#define __Pyx_PyObject_AsWritableUString(s)    ((unsigned char*)(__pyx_uintptr_t) __Pyx_PyObject_AsString(s))
#define __Pyx_PyObject_AsSString(s)    ((const signed char*) __Pyx_PyObject_AsString(s))
#define __Pyx_PyObject_AsUString(s)    ((const unsigned char*) __Pyx_PyObject_AsString(s))
#define __Pyx_PyObject_FromCString(s)  __Pyx_PyObject_FromString((const char*)s)
#define __Pyx_PyBytes_FromCString(s)   __Pyx_PyBytes_FromString((const char*)s)
#define __Pyx_PyByteArray_FromCString(s)   __Pyx_PyByteArray_FromString((const char*)s)
#define __Pyx_PyUnicode_FromCString(s) __Pyx_PyUnicode_FromString((const char*)s)
#define __Pyx_PyUnicode_FromOrdinal(o)       PyUnicode_FromOrdinal((int)o)
#define __Pyx_PyUnicode_AsUnicode            PyUnicode_AsUnicode
static CYTHON_INLINE PyObject *__Pyx_NewRef(PyObject *obj) {
#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030a0000 || defined(Py_NewRef)
    return Py_NewRef(obj);
#else
    Py_INCREF(obj);
    return obj;
#endif
}
static CYTHON_INLINE PyObject *__Pyx_XNewRef(PyObject *obj) {
#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030a0000 || defined(Py_XNewRef)
    return Py_XNewRef(obj);
#else
    Py_XINCREF(obj);
    return obj;
#endif
}
static CYTHON_INLINE PyObject *__Pyx_Owned_Py_None(int b);
static CYTHON_INLINE PyObject * __Pyx_PyBool_FromLong(long b);
static CYTHON_INLINE int __Pyx_PyObject_IsTrue(PyObject*);
static CYTHON_INLINE int __Pyx_PyObject_IsTrueAndDecref(PyObject*);
static CYTHON_INLINE PyObject* __Pyx_PyNumber_Long(PyObject* x);
#define __Pyx_PySequence_Tuple(obj)\
    (likely(PyTuple_CheckExact(obj)) ? __Pyx_NewRef(obj) : PySequence_Tuple(obj))
static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject*);
static CYTHON_INLINE PyObject * __Pyx_PyLong_FromSize_t(size_t);
static CYTHON_INLINE Py_hash_t __Pyx_PyIndex_AsHash_t(PyObject*);
#if CYTHON_ASSUME_SAFE_MACROS
#define __Pyx_PyFloat_AsDouble(x) (PyFloat_CheckExact(x) ? PyFloat_AS_DOUBLE(x) : PyFloat_AsDouble(x))
#define __Pyx_PyFloat_AS_DOUBLE(x) PyFloat_AS_DOUBLE(x)
#else
#define __Pyx_PyFloat_AsDouble(x) PyFloat_AsDouble(x)
#define __Pyx_PyFloat_AS_DOUBLE(x) PyFloat_AsDouble(x)
#endif
#define __Pyx_PyFloat_AsFloat(x) ((float) __Pyx_PyFloat_AsDouble(x))
#define __Pyx_PyNumber_Int(x) (PyLong_CheckExact(x) ? __Pyx_NewRef(x) : PyNumber_Long(x))
#if CYTHON_USE_PYLONG_INTERNALS
  #if PY_VERSION_HEX >= 0x030C00A7
  #ifndef _PyLong_SIGN_MASK
    #define _PyLong_SIGN_MASK 3
  #endif
  #ifndef _PyLong_NON_SIZE_BITS
    #define _PyLong_NON_SIZE_BITS 3
  #endif
  #define __Pyx_PyLong_Sign(x)  (((PyLongObject*)x)->long_value.lv_tag & _PyLong_SIGN_MASK)
  #define __Pyx_PyLong_IsNeg(x)  ((__Pyx_PyLong_Sign(x) & 2) != 0)
  #define __Pyx_PyLong_IsNonNeg(x)  (!__Pyx_PyLong_IsNeg(x))
  #define __Pyx_PyLong_IsZero(x)  (__Pyx_PyLong_Sign(x) & 1)
  #define __Pyx_PyLong_IsPos(x)  (__Pyx_PyLong_Sign(x) == 0)
  #define __Pyx_PyLong_CompactValueUnsigned(x)  (__Pyx_PyLong_Digits(x)[0])
  #define __Pyx_PyLong_DigitCount(x)  ((Py_ssize_t) (((PyLongObject*)x)->long_value.lv_tag >> _PyLong_NON_SIZE_BITS))
  #define __Pyx_PyLong_SignedDigitCount(x)\
        ((1 - (Py_ssize_t) __Pyx_PyLong_Sign(x)) * __Pyx_PyLong_DigitCount(x))
  #if defined(PyUnstable_Long_IsCompact) && defined(PyUnstable_Long_CompactValue)
    #define __Pyx_PyLong_IsCompact(x)     PyUnstable_Long_IsCompact((PyLongObject*) x)
    #define __Pyx_PyLong_CompactValue(x)  PyUnstable_Long_CompactValue((PyLongObject*) x)
  #else
    #define __Pyx_PyLong_IsCompact(x)     (((PyLongObject*)x)->long_value.lv_tag < (2 << _PyLong_NON_SIZE_BITS))
    #define __Pyx_PyLong_CompactValue(x)  ((1 - (Py_ssize_t) __Pyx_PyLong_Sign(x)) * (Py_ssize_t) __Pyx_PyLong_Digits(x)[0])
  #endif
  typedef Py_ssize_t  __Pyx_compact_pylong;
  typedef size_t  __Pyx_compact_upylong;
  #else
  #define __Pyx_PyLong_IsNeg(x)  (Py_SIZE(x) < 0)
  #define __Pyx_PyLong_IsNonNeg(x)  (Py_SIZE(x) >= 0)
  #define __Pyx_PyLong_IsZero(x)  (Py_SIZE(x) == 0)
  #define __Pyx_PyLong_IsPos(x)  (Py_SIZE(x) > 0)
  #define __Pyx_PyLong_CompactValueUnsigned(x)  ((Py_SIZE(x) == 0) ? 0 : __Pyx_PyLong_Digits(x)[0])
  #define __Pyx_PyLong_DigitCount(x)  __Pyx_sst_abs(Py_SIZE(x))
  #define __Pyx_PyLong_SignedDigitCount(x)  Py_SIZE(x)
  #define __Pyx_PyLong_IsCompact(x)  (Py_SIZE(x) == 0 || Py_SIZE(x) == 1 || Py_SIZE(x) == -1)
  #define __Pyx_PyLong_CompactValue(x)\
        ((Py_SIZE(x) == 0) ? (sdigit) 0 : ((Py_SIZE(x) < 0) ? -(sdigit)__Pyx_PyLong_Digits(x)[0] : (sdigit)__Pyx_PyLong_Digits(x)[0]))
  typedef sdigit  __Pyx_compact_pylong;
  typedef digit  __Pyx_compact_upylong;
  #endif
  #if PY_VERSION_HEX >= 0x030C00A5
  #define __Pyx_PyLong_Digits(x)  (((PyLongObject*)x)->long_value.ob_digit)
  #else
  #define __Pyx_PyLong_Digits(x)  (((PyLongObject*)x)->ob_digit)
  #endif
#endif
#if __PYX_DEFAULT_STRING_ENCODING_IS_UTF8
  #define __Pyx_PyUnicode_FromStringAndSize(c_str, size) PyUnicode_DecodeUTF8(c_str, size, NULL)
#elif __PYX_DEFAULT_STRING_ENCODING_IS_ASCII
  #define __Pyx_PyUnicode_FromStringAndSize(c_str, size) PyUnicode_DecodeASCII(c_str, size, NULL)
#else
  #define __Pyx_PyUnicode_FromStringAndSize(c_str, size) PyUnicode_Decode(c_str, size, __PYX_DEFAULT_STRING_ENCODING, NULL)
#endif


/* Test for GCC > 2.95 */
#if defined(__GNUC__)     && (__GNUC__ > 2 || (__GNUC__ == 2 && (__GNUC_MINOR__ > 95)))
  #define likely(x)   __builtin_expect(!!(x), 1)
  #define unlikely(x) __builtin_expect(!!(x), 0)
#else /* !__GNUC__ or GCC < 2.95 */
  #define likely(x)   (x)
  #define unlikely(x) (x)
#endif /* __GNUC__ */
/* PretendToInitialize */
#ifdef __cplusplus
#if __cplusplus > 201103L
#include <type_traits>
#endif
template <typename T>
static void __Pyx_pretend_to_initialize(T* ptr) {
#if __cplusplus > 201103L
    if ((std::is_trivially_default_constructible<T>::value))
#endif
        *ptr = T();
    (void)ptr;
}
#else
static CYTHON_INLINE void __Pyx_pretend_to_initialize(void* ptr) { (void)ptr; }
#endif


#if !CYTHON_USE_MODULE_STATE
static PyObject *__pyx_m = NULL;
#endif
static int __pyx_lineno;
static int __pyx_clineno = 0;
static const char * const __pyx_cfilenm = __FILE__;
static const char *__pyx_filename;

/* #### Code section: filename_table ### */

static const char* const __pyx_f[] = {
  "unicorn_binance_rest_api/manager.py",
};
/* #### Code section: utility_code_proto_before_types ### */
/* Atomics.proto */
#include <pythread.h>
#ifndef CYTHON_ATOMICS
    #define CYTHON_ATOMICS 1
#endif
#define __PYX_CYTHON_ATOMICS_ENABLED() CYTHON_ATOMICS
#define __PYX_GET_CYTHON_COMPILING_IN_CPYTHON_FREETHREADING() CYTHON_COMPILING_IN_CPYTHON_FREETHREADING
#define __pyx_atomic_int_type int
#define __pyx_nonatomic_int_type int
#if CYTHON_ATOMICS && (defined(__STDC_VERSION__) &&\
                        (__STDC_VERSION__ >= 201112L) &&\
                        !defined(__STDC_NO_ATOMICS__))
    #include <stdatomic.h>
#elif CYTHON_ATOMICS && (defined(__cplusplus) && (\
                    (__cplusplus >= 201103L) ||\
                    (defined(_MSC_VER) && _MSC_VER >= 1700)))
    #include <atomic>
#endif
#if CYTHON_ATOMICS && (defined(__STDC_VERSION__) &&\
                        (__STDC_VERSION__ >= 201112L) &&\
                        !defined(__STDC_NO_ATOMICS__) &&\
                       ATOMIC_INT_LOCK_FREE == 2)
    #undef __pyx_atomic_int_type
    #define __pyx_atomic_int_type atomic_int
    #define __pyx_atomic_ptr_type atomic_uintptr_t
    #define __pyx_nonatomic_ptr_type uintptr_t
    #define __pyx_atomic_incr_relaxed(value) atomic_fetch_add_explicit(value, 1, memory_order_relaxed)
    #define __pyx_atomic_incr_acq_rel(value) atomic_fetch_add_explicit(value, 1, memory_order_acq_rel)
    #define __pyx_atomic_decr_acq_rel(value) atomic_fetch_sub_explicit(value, 1, memory_order_acq_rel)
    #define __pyx_atomic_sub(value, arg) atomic_fetch_sub(value, arg)
    #define __pyx_atomic_int_cmp_exchange(value, expected, desired) atomic_compare_exchange_strong(value, expected, desired)
    #define __pyx_atomic_load(value) atomic_load(value)
    #define __pyx_atomic_store(value, new_value) atomic_store(value, new_value)
    #define __pyx_atomic_pointer_load_relaxed(value) atomic_load_explicit(value, memory_order_relaxed)
    #define __pyx_atomic_pointer_load_acquire(value) atomic_load_explicit(value, memory_order_acquire)
    #define __pyx_atomic_pointer_exchange(value, new_value) atomic_exchange(value, (__pyx_nonatomic_ptr_type)new_value)
    #if defined(__PYX_DEBUG_ATOMICS) && defined(_MSC_VER)
        #pragma message ("Using standard C atomics")
    #elif defined(__PYX_DEBUG_ATOMICS)
        #warning "Using standard C atomics"
    #endif
#elif CYTHON_ATOMICS && (defined(__cplusplus) && (\
                    (__cplusplus >= 201103L) ||\
\
                    (defined(_MSC_VER) && _MSC_VER >= 1700)) &&\
                    ATOMIC_INT_LOCK_FREE == 2)
    #undef __pyx_atomic_int_type
    #define __pyx_atomic_int_type std::atomic_int
    #define __pyx_atomic_ptr_type std::atomic_uintptr_t
    #define __pyx_nonatomic_ptr_type uintptr_t
    #define __pyx_atomic_incr_relaxed(value) std::atomic_fetch_add_explicit(value, 1, std::memory_order_relaxed)
    #define __pyx_atomic_incr_acq_rel(value) std::atomic_fetch_add_explicit(value, 1, std::memory_order_acq_rel)
    #define __pyx_atomic_decr_acq_rel(value) std::atomic_fetch_sub_explicit(value, 1, std::memory_order_acq_rel)
    #define __pyx_atomic_sub(value, arg) std::atomic_fetch_sub(value, arg)
    #define __pyx_atomic_int_cmp_exchange(value, expected, desired) std::atomic_compare_exchange_strong(value, expected, desired)
    #define __pyx_atomic_load(value) std::atomic_load(value)
    #define __pyx_atomic_store(value, new_value) std::atomic_store(value, new_value)
    #define __pyx_atomic_pointer_load_relaxed(value) std::atomic_load_explicit(value, std::memory_order_relaxed)
    #define __pyx_atomic_pointer_load_acquire(value) std::atomic_load_explicit(value, std::memory_order_acquire)
    #define __pyx_atomic_pointer_exchange(value, new_value) std::atomic_exchange(value, (__pyx_nonatomic_ptr_type)new_value)
    #if defined(__PYX_DEBUG_ATOMICS) && defined(_MSC_VER)
        #pragma message ("Using standard C++ atomics")
    #elif defined(__PYX_DEBUG_ATOMICS)
        #warning "Using standard C++ atomics"
    #endif
#elif CYTHON_ATOMICS && (__GNUC__ >= 5 || (__GNUC__ == 4 &&\
                    (__GNUC_MINOR__ > 1 ||\
                    (__GNUC_MINOR__ == 1 && __GNUC_PATCHLEVEL__ >= 2))))
    #define __pyx_atomic_ptr_type void*
    #define __pyx_atomic_incr_relaxed(value) __sync_fetch_and_add(value, 1)
    #define __pyx_atomic_incr_acq_rel(value) __sync_fetch_and_add(value, 1)
    #define __pyx_atomic_decr_acq_rel(value) __sync_fetch_and_sub(value, 1)
    #define __pyx_atomic_sub(value, arg) __sync_fetch_and_sub(value, arg)
    static CYTHON_INLINE int __pyx_atomic_int_cmp_exchange(__pyx_atomic_int_type* value, __pyx_nonatomic_int_type* expected, __pyx_nonatomic_int_type desired) {
        __pyx_nonatomic_int_type old = __sync_val_compare_and_swap(value, *expected, desired);
        int result = old == *expected;
        *expected = old;
        return result;
    }
    #define __pyx_atomic_load(value) __sync_fetch_and_add(value, 0)
    #define __pyx_atomic_store(value, new_value) __sync_lock_test_and_set(value, new_value)
    #define __pyx_atomic_pointer_load_relaxed(value) __sync_fetch_and_add(value, 0)
    #define __pyx_atomic_pointer_load_acquire(value) __sync_fetch_and_add(value, 0)
    #define __pyx_atomic_pointer_exchange(value, new_value) __sync_lock_test_and_set(value, (__pyx_atomic_ptr_type)new_value)
    #ifdef __PYX_DEBUG_ATOMICS
        #warning "Using GNU atomics"
    #endif
#elif CYTHON_ATOMICS && defined(_MSC_VER)
    #include <intrin.h>
    #undef __pyx_atomic_int_type
    #define __pyx_atomic_int_type long
    #define __pyx_atomic_ptr_type void*
    #undef __pyx_nonatomic_int_type
    #define __pyx_nonatomic_int_type long
    #pragma intrinsic (_InterlockedExchangeAdd, _InterlockedExchange, _InterlockedCompareExchange, _InterlockedCompareExchangePointer, _InterlockedExchangePointer)
    #define __pyx_atomic_incr_relaxed(value) _InterlockedExchangeAdd(value, 1)
    #define __pyx_atomic_incr_acq_rel(value) _InterlockedExchangeAdd(value, 1)
    #define __pyx_atomic_decr_acq_rel(value) _InterlockedExchangeAdd(value, -1)
    #define __pyx_atomic_sub(value, arg) _InterlockedExchangeAdd(value, -arg)
    static CYTHON_INLINE int __pyx_atomic_int_cmp_exchange(__pyx_atomic_int_type* value, __pyx_nonatomic_int_type* expected, __pyx_nonatomic_int_type desired) {
        __pyx_nonatomic_int_type old = _InterlockedCompareExchange(value, desired, *expected);
        int result = old == *expected;
        *expected = old;
        return result;
    }
    #define __pyx_atomic_load(value) _InterlockedExchangeAdd(value, 0)
    #define __pyx_atomic_store(value, new_value) _InterlockedExchange(value, new_value)
    #define __pyx_atomic_pointer_load_relaxed(value) *(void * volatile *)value
    #define __pyx_atomic_pointer_load_acquire(value) _InterlockedCompareExchangePointer(value, 0, 0)
    #define __pyx_atomic_pointer_exchange(value, new_value) _InterlockedExchangePointer(value, (__pyx_atomic_ptr_type)new_value)
    #ifdef __PYX_DEBUG_ATOMICS
        #pragma message ("Using MSVC atomics")
    #endif
#else
    #undef CYTHON_ATOMICS
    #define CYTHON_ATOMICS 0
    #ifdef __PYX_DEBUG_ATOMICS
        #warning "Not using atomics"
    #endif
#endif
#if CYTHON_ATOMICS
    #define __pyx_add_acquisition_count(memview)\
             __pyx_atomic_incr_relaxed(__pyx_get_slice_count_pointer(memview))
    #define __pyx_sub_acquisition_count(memview)\
            __pyx_atomic_decr_acq_rel(__pyx_get_slice_count_pointer(memview))
#else
    #define __pyx_add_acquisition_count(memview)\
            __pyx_add_acquisition_count_locked(__pyx_get_slice_count_pointer(memview), memview->lock)
    #define __pyx_sub_acquisition_count(memview)\
            __pyx_sub_acquisition_count_locked(__pyx_get_slice_count_pointer(memview), memview->lock)
#endif

/* IncludeStructmemberH.proto */
#include <structmember.h>

/* CriticalSections.proto */
#if !CYTHON_COMPILING_IN_CPYTHON_FREETHREADING
#define __Pyx_PyCriticalSection void*
#define __Pyx_PyCriticalSection2 void*
#define __Pyx_PyCriticalSection_Begin1(cs, arg) (void)cs
#define __Pyx_PyCriticalSection_Begin2(cs, arg1, arg2) (void)cs
#define __Pyx_PyCriticalSection_End1(cs)
#define __Pyx_PyCriticalSection_End2(cs)
#else
#define __Pyx_PyCriticalSection PyCriticalSection
#define __Pyx_PyCriticalSection2 PyCriticalSection2
#define __Pyx_PyCriticalSection_Begin1 PyCriticalSection_Begin
#define __Pyx_PyCriticalSection_Begin2 PyCriticalSection2_Begin
#define __Pyx_PyCriticalSection_End1 PyCriticalSection_End
#define __Pyx_PyCriticalSection_End2 PyCriticalSection2_End
#endif
#if PY_VERSION_HEX < 0x030d0000 || CYTHON_COMPILING_IN_LIMITED_API
#define __Pyx_BEGIN_CRITICAL_SECTION(o) {
#define __Pyx_END_CRITICAL_SECTION() }
#else
#define __Pyx_BEGIN_CRITICAL_SECTION Py_BEGIN_CRITICAL_SECTION
#define __Pyx_END_CRITICAL_SECTION Py_END_CRITICAL_SECTION
#endif

/* #### Code section: numeric_typedefs ### */
/* #### Code section: complex_type_declarations ### */
/* #### Code section: type_declarations ### */

/*--- Type declarations ---*/
struct __pyx_defaults;
struct __pyx_obj_24unicorn_binance_rest_api_7manager___pyx_scope_struct__genexpr;
struct __pyx_obj_24unicorn_binance_rest_api_7manager___pyx_scope_struct_1_aggregate_trade_iter;
struct __pyx_obj_24unicorn_binance_rest_api_7manager___pyx_scope_struct_2_get_historical_klines_generator;

/* "unicorn_binance_rest_api/manager.py":418
 *         return session
 * 
 *     def _create_api_uri(self, path, signed=True, version=PUBLIC_API_VERSION):             # <<<<<<<<<<<<<<
 *         v = self.PRIVATE_API_VERSION if signed else version
 *         return self.API_URL + '/' + v + '/' + path
*/
struct __pyx_defaults {
  PyObject_HEAD
  PyObject *arg0;
};


/* "unicorn_binance_rest_api/manager.py":529
 *         # if get request assign data array to params value for requests lib
 *         if data and (method == 'get' or force_params):
 *             kwargs['params'] = '&'.join('%s=%s' % (data[0], data[1]) for data in kwargs['data'])             # <<<<<<<<<<<<<<
 *             del kwargs['data']
 * 
*/
struct __pyx_obj_24unicorn_binance_rest_api_7manager___pyx_scope_struct__genexpr {
  PyObject_HEAD
  PyObject *__pyx_genexpr_arg_0;
  PyObject *__pyx_v_data;
};


/* "unicorn_binance_rest_api/manager.py":1058
 *         return self._get('aggTrades', data=params, version=self.PRIVATE_API_VERSION)
 * 
 *     def aggregate_trade_iter(self, symbol, start_str=None, last_id=None):             # <<<<<<<<<<<<<<
 *         """
 *         Iterate over aggregate trade data from (start_time or last_id) to
*/
struct __pyx_obj_24unicorn_binance_rest_api_7manager___pyx_scope_struct_1_aggregate_trade_iter {
  PyObject_HEAD
  PyObject *__pyx_v_end_ts;
  PyObject *__pyx_v_last_id;
  PyObject *__pyx_v_self;
  PyObject *__pyx_v_start_str;
  PyObject *__pyx_v_start_ts;
  PyObject *__pyx_v_symbol;
  PyObject *__pyx_v_t;
  PyObject *__pyx_v_trades;
  Py_ssize_t __pyx_t_0;
  PyObject *__pyx_t_1;
  PyObject *(*__pyx_t_2)(PyObject *);
};


/* "unicorn_binance_rest_api/manager.py":1295
 *         return output_data
 * 
 *     def get_historical_klines_generator(self, symbol, interval, start_str, end_str=None):             # <<<<<<<<<<<<<<
 *         """
 *         Get Historical Klines from Binance
*/
struct __pyx_obj_24unicorn_binance_rest_api_7manager___pyx_scope_struct_2_get_historical_klines_generator {
  PyObject_HEAD
  PyObject *__pyx_v_end_str;
  PyObject *__pyx_v_end_ts;
  PyObject *__pyx_v_first_valid_ts;
  PyObject *__pyx_v_idx;
  PyObject *__pyx_v_interval;
  long __pyx_v_limit;
  PyObject *__pyx_v_o;
  PyObject *__pyx_v_output_data;
  PyObject *__pyx_v_self;
  PyObject *__pyx_v_start_str;
  PyObject *__pyx_v_start_ts;
  PyObject *__pyx_v_symbol;
  PyObject *__pyx_v_timeframe;
  PyObject *__pyx_t_0;
  Py_ssize_t __pyx_t_1;
  PyObject *(*__pyx_t_2)(PyObject *);
};

/* #### Code section: utility_code_proto ### */

/* --- Runtime support code (head) --- */
/* Refnanny.proto */
#ifndef CYTHON_REFNANNY
  #define CYTHON_REFNANNY 0
#endif
#if CYTHON_REFNANNY
  typedef struct {
    void (*INCREF)(void*, PyObject*, Py_ssize_t);
    void (*DECREF)(void*, PyObject*, Py_ssize_t);
    void (*GOTREF)(void*, PyObject*, Py_ssize_t);
    void (*GIVEREF)(void*, PyObject*, Py_ssize_t);
    void* (*SetupContext)(const char*, Py_ssize_t, const char*);
    void (*FinishContext)(void**);
  } __Pyx_RefNannyAPIStruct;
  static __Pyx_RefNannyAPIStruct *__Pyx_RefNanny = NULL;
  static __Pyx_RefNannyAPIStruct *__Pyx_RefNannyImportAPI(const char *modname);
  #define __Pyx_RefNannyDeclarations void *__pyx_refnanny = NULL;
  #define __Pyx_RefNannySetupContext(name, acquire_gil)\
          if (acquire_gil) {\
              PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();\
              __pyx_refnanny = __Pyx_RefNanny->SetupContext((name), (__LINE__), (__FILE__));\
              PyGILState_Release(__pyx_gilstate_save);\
          } else {\
              __pyx_refnanny = __Pyx_RefNanny->SetupContext((name), (__LINE__), (__FILE__));\
          }
  #define __Pyx_RefNannyFinishContextNogil() {\
              PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();\
              __Pyx_RefNannyFinishContext();\
              PyGILState_Release(__pyx_gilstate_save);\
          }
  #define __Pyx_RefNannyFinishContextNogil() {\
              PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();\
              __Pyx_RefNannyFinishContext();\
              PyGILState_Release(__pyx_gilstate_save);\
          }
  #define __Pyx_RefNannyFinishContext()\
          __Pyx_RefNanny->FinishContext(&__pyx_refnanny)
  #define __Pyx_INCREF(r)  __Pyx_RefNanny->INCREF(__pyx_refnanny, (PyObject *)(r), (__LINE__))
  #define __Pyx_DECREF(r)  __Pyx_RefNanny->DECREF(__pyx_refnanny, (PyObject *)(r), (__LINE__))
  #define __Pyx_GOTREF(r)  __Pyx_RefNanny->GOTREF(__pyx_refnanny, (PyObject *)(r), (__LINE__))
  #define __Pyx_GIVEREF(r) __Pyx_RefNanny->GIVEREF(__pyx_refnanny, (PyObject *)(r), (__LINE__))
  #define __Pyx_XINCREF(r)  do { if((r) == NULL); else {__Pyx_INCREF(r); }} while(0)
  #define __Pyx_XDECREF(r)  do { if((r) == NULL); else {__Pyx_DECREF(r); }} while(0)
  #define __Pyx_XGOTREF(r)  do { if((r) == NULL); else {__Pyx_GOTREF(r); }} while(0)
  #define __Pyx_XGIVEREF(r) do { if((r) == NULL); else {__Pyx_GIVEREF(r);}} while(0)
#else
  #define __Pyx_RefNannyDeclarations
  #define __Pyx_RefNannySetupContext(name, acquire_gil)
  #define __Pyx_RefNannyFinishContextNogil()
  #define __Pyx_RefNannyFinishContext()
  #define __Pyx_INCREF(r) Py_INCREF(r)
  #define __Pyx_DECREF(r) Py_DECREF(r)
  #define __Pyx_GOTREF(r)
  #define __Pyx_GIVEREF(r)
  #define __Pyx_XINCREF(r) Py_XINCREF(r)
  #define __Pyx_XDECREF(r) Py_XDECREF(r)
  #define __Pyx_XGOTREF(r)
  #define __Pyx_XGIVEREF(r)
#endif
#define __Pyx_Py_XDECREF_SET(r, v) do {\
        PyObject *tmp = (PyObject *) r;\
        r = v; Py_XDECREF(tmp);\
    } while (0)
#define __Pyx_XDECREF_SET(r, v) do {\
        PyObject *tmp = (PyObject *) r;\
        r = v; __Pyx_XDECREF(tmp);\
    } while (0)
#define __Pyx_DECREF_SET(r, v) do {\
        PyObject *tmp = (PyObject *) r;\
        r = v; __Pyx_DECREF(tmp);\
    } while (0)
#define __Pyx_CLEAR(r)    do { PyObject* tmp = ((PyObject*)(r)); r = NULL; __Pyx_DECREF(tmp);} while(0)
#define __Pyx_XCLEAR(r)   do { if((r) != NULL) {PyObject* tmp = ((PyObject*)(r)); r = NULL; __Pyx_DECREF(tmp);}} while(0)

/* PyErrExceptionMatches.proto */
#if CYTHON_FAST_THREAD_STATE
#define __Pyx_PyErr_ExceptionMatches(err) __Pyx_PyErr_ExceptionMatchesInState(__pyx_tstate, err)
static CYTHON_INLINE int __Pyx_PyErr_ExceptionMatchesInState(PyThreadState* tstate, PyObject* err);
#else
#define __Pyx_PyErr_ExceptionMatches(err)  PyErr_ExceptionMatches(err)
#endif

/* PyThreadStateGet.proto */
#if CYTHON_FAST_THREAD_STATE
#define __Pyx_PyThreadState_declare  PyThreadState *__pyx_tstate;
#define __Pyx_PyThreadState_assign  __pyx_tstate = __Pyx_PyThreadState_Current;
#if PY_VERSION_HEX >= 0x030C00A6
#define __Pyx_PyErr_Occurred()  (__pyx_tstate->current_exception != NULL)
#define __Pyx_PyErr_CurrentExceptionType()  (__pyx_tstate->current_exception ? (PyObject*) Py_TYPE(__pyx_tstate->current_exception) : (PyObject*) NULL)
#else
#define __Pyx_PyErr_Occurred()  (__pyx_tstate->curexc_type != NULL)
#define __Pyx_PyErr_CurrentExceptionType()  (__pyx_tstate->curexc_type)
#endif
#else
#define __Pyx_PyThreadState_declare
#define __Pyx_PyThreadState_assign
#define __Pyx_PyErr_Occurred()  (PyErr_Occurred() != NULL)
#define __Pyx_PyErr_CurrentExceptionType()  PyErr_Occurred()
#endif

/* PyErrFetchRestore.proto */
#if CYTHON_FAST_THREAD_STATE
#define __Pyx_PyErr_Clear() __Pyx_ErrRestore(NULL, NULL, NULL)
#define __Pyx_ErrRestoreWithState(type, value, tb)  __Pyx_ErrRestoreInState(PyThreadState_GET(), type, value, tb)
#define __Pyx_ErrFetchWithState(type, value, tb)    __Pyx_ErrFetchInState(PyThreadState_GET(), type, value, tb)
#define __Pyx_ErrRestore(type, value, tb)  __Pyx_ErrRestoreInState(__pyx_tstate, type, value, tb)
#define __Pyx_ErrFetch(type, value, tb)    __Pyx_ErrFetchInState(__pyx_tstate, type, value, tb)
static CYTHON_INLINE void __Pyx_ErrRestoreInState(PyThreadState *tstate, PyObject *type, PyObject *value, PyObject *tb);
static CYTHON_INLINE void __Pyx_ErrFetchInState(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb);
#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX < 0x030C00A6
#define __Pyx_PyErr_SetNone(exc) (Py_INCREF(exc), __Pyx_ErrRestore((exc), NULL, NULL))
#else
#define __Pyx_PyErr_SetNone(exc) PyErr_SetNone(exc)
#endif
#else
#define __Pyx_PyErr_Clear() PyErr_Clear()
#define __Pyx_PyErr_SetNone(exc) PyErr_SetNone(exc)
#define __Pyx_ErrRestoreWithState(type, value, tb)  PyErr_Restore(type, value, tb)
#define __Pyx_ErrFetchWithState(type, value, tb)  PyErr_Fetch(type, value, tb)
#define __Pyx_ErrRestoreInState(tstate, type, value, tb)  PyErr_Restore(type, value, tb)
#define __Pyx_ErrFetchInState(tstate, type, value, tb)  PyErr_Fetch(type, value, tb)
#define __Pyx_ErrRestore(type, value, tb)  PyErr_Restore(type, value, tb)
#define __Pyx_ErrFetch(type, value, tb)  PyErr_Fetch(type, value, tb)
#endif

/* PyObjectGetAttrStr.proto */
#if CYTHON_USE_TYPE_SLOTS
static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStr(PyObject* obj, PyObject* attr_name);
#else
#define __Pyx_PyObject_GetAttrStr(o,n) PyObject_GetAttr(o,n)
#endif

/* PyObjectGetAttrStrNoError.proto */
static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStrNoError(PyObject* obj, PyObject* attr_name);

/* GetBuiltinName.proto */
static PyObject *__Pyx_GetBuiltinName(PyObject *name);

/* TupleAndListFromArray.proto */
#if CYTHON_COMPILING_IN_CPYTHON
static CYTHON_INLINE PyObject* __Pyx_PyList_FromArray(PyObject *const *src, Py_ssize_t n);
#endif
#if CYTHON_COMPILING_IN_CPYTHON || CYTHON_METH_FASTCALL
static CYTHON_INLINE PyObject* __Pyx_PyTuple_FromArray(PyObject *const *src, Py_ssize_t n);
#endif

/* IncludeStringH.proto */
#include <string.h>

/* BytesEquals.proto */
static CYTHON_INLINE int __Pyx_PyBytes_Equals(PyObject* s1, PyObject* s2, int equals);

/* UnicodeEquals.proto */
static CYTHON_INLINE int __Pyx_PyUnicode_Equals(PyObject* s1, PyObject* s2, int equals);

/* fastcall.proto */
#if CYTHON_AVOID_BORROWED_REFS
    #define __Pyx_ArgRef_VARARGS(args, i) __Pyx_PySequence_ITEM(args, i)
#elif CYTHON_ASSUME_SAFE_MACROS
    #define __Pyx_ArgRef_VARARGS(args, i) __Pyx_NewRef(__Pyx_PyTuple_GET_ITEM(args, i))
#else
    #define __Pyx_ArgRef_VARARGS(args, i) __Pyx_XNewRef(PyTuple_GetItem(args, i))
#endif
#define __Pyx_NumKwargs_VARARGS(kwds) PyDict_Size(kwds)
#define __Pyx_KwValues_VARARGS(args, nargs) NULL
#define __Pyx_GetKwValue_VARARGS(kw, kwvalues, s) __Pyx_PyDict_GetItemStrWithError(kw, s)
#define __Pyx_KwargsAsDict_VARARGS(kw, kwvalues) PyDict_Copy(kw)
#if CYTHON_METH_FASTCALL
    #define __Pyx_ArgRef_FASTCALL(args, i) __Pyx_NewRef(args[i])
    #define __Pyx_NumKwargs_FASTCALL(kwds) __Pyx_PyTuple_GET_SIZE(kwds)
    #define __Pyx_KwValues_FASTCALL(args, nargs) ((args) + (nargs))
    static CYTHON_INLINE PyObject * __Pyx_GetKwValue_FASTCALL(PyObject *kwnames, PyObject *const *kwvalues, PyObject *s);
  #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030d0000 || CYTHON_COMPILING_IN_LIMITED_API
    CYTHON_UNUSED static PyObject *__Pyx_KwargsAsDict_FASTCALL(PyObject *kwnames, PyObject *const *kwvalues);
  #else
    #define __Pyx_KwargsAsDict_FASTCALL(kw, kwvalues) _PyStack_AsDict(kwvalues, kw)
  #endif
#else
    #define __Pyx_ArgRef_FASTCALL __Pyx_ArgRef_VARARGS
    #define __Pyx_NumKwargs_FASTCALL __Pyx_NumKwargs_VARARGS
    #define __Pyx_KwValues_FASTCALL __Pyx_KwValues_VARARGS
    #define __Pyx_GetKwValue_FASTCALL __Pyx_GetKwValue_VARARGS
    #define __Pyx_KwargsAsDict_FASTCALL __Pyx_KwargsAsDict_VARARGS
#endif
#define __Pyx_ArgsSlice_VARARGS(args, start, stop) PyTuple_GetSlice(args, start, stop)
#if CYTHON_METH_FASTCALL || (CYTHON_COMPILING_IN_CPYTHON && CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS)
#define __Pyx_ArgsSlice_FASTCALL(args, start, stop) __Pyx_PyTuple_FromArray(args + start, stop - start)
#else
#define __Pyx_ArgsSlice_FASTCALL(args, start, stop) PyTuple_GetSlice(args, start, stop)
#endif

/* RaiseDoubleKeywords.proto */
static void __Pyx_RaiseDoubleKeywordsError(const char* func_name, PyObject* kw_name);

/* ParseKeywords.proto */
static CYTHON_INLINE int __Pyx_ParseKeywords(
    PyObject *kwds, PyObject *const *kwvalues, PyObject ** const argnames[],
    PyObject *kwds2, PyObject *values[],
    Py_ssize_t num_pos_args, Py_ssize_t num_kwargs,
    const char* function_name,
    int ignore_unknown_kwargs
);

/* CallCFunction.proto */
#define __Pyx_CallCFunction(cfunc, self, args)\
    ((PyCFunction)(void(*)(void))(cfunc)->func)(self, args)
#define __Pyx_CallCFunctionWithKeywords(cfunc, self, args, kwargs)\
    ((PyCFunctionWithKeywords)(void(*)(void))(cfunc)->func)(self, args, kwargs)
#define __Pyx_CallCFunctionFast(cfunc, self, args, nargs)\
    ((__Pyx_PyCFunctionFast)(void(*)(void))(PyCFunction)(cfunc)->func)(self, args, nargs)
#define __Pyx_CallCFunctionFastWithKeywords(cfunc, self, args, nargs, kwnames)\
    ((__Pyx_PyCFunctionFastWithKeywords)(void(*)(void))(PyCFunction)(cfunc)->func)(self, args, nargs, kwnames)

/* PyFunctionFastCall.proto */
#if CYTHON_FAST_PYCALL
#if !CYTHON_VECTORCALL
#define __Pyx_PyFunction_FastCall(func, args, nargs)\
    __Pyx_PyFunction_FastCallDict((func), (args), (nargs), NULL)
static PyObject *__Pyx_PyFunction_FastCallDict(PyObject *func, PyObject *const *args, Py_ssize_t nargs, PyObject *kwargs);
#endif
#define __Pyx_BUILD_ASSERT_EXPR(cond)\
    (sizeof(char [1 - 2*!(cond)]) - 1)
#ifndef Py_MEMBER_SIZE
#define Py_MEMBER_SIZE(type, member) sizeof(((type *)0)->member)
#endif
#if !CYTHON_VECTORCALL
#if PY_VERSION_HEX >= 0x03080000
  #include "frameobject.h"
  #define __Pxy_PyFrame_Initialize_Offsets()
  #define __Pyx_PyFrame_GetLocalsplus(frame)  ((frame)->f_localsplus)
#else
  static size_t __pyx_pyframe_localsplus_offset = 0;
  #include "frameobject.h"
  #define __Pxy_PyFrame_Initialize_Offsets()\
    ((void)__Pyx_BUILD_ASSERT_EXPR(sizeof(PyFrameObject) == offsetof(PyFrameObject, f_localsplus) + Py_MEMBER_SIZE(PyFrameObject, f_localsplus)),\
     (void)(__pyx_pyframe_localsplus_offset = ((size_t)PyFrame_Type.tp_basicsize) - Py_MEMBER_SIZE(PyFrameObject, f_localsplus)))
  #define __Pyx_PyFrame_GetLocalsplus(frame)\
    (assert(__pyx_pyframe_localsplus_offset), (PyObject **)(((char *)(frame)) + __pyx_pyframe_localsplus_offset))
#endif
#endif
#endif

/* PyObjectCall.proto */
#if CYTHON_COMPILING_IN_CPYTHON
static CYTHON_INLINE PyObject* __Pyx_PyObject_Call(PyObject *func, PyObject *arg, PyObject *kw);
#else
#define __Pyx_PyObject_Call(func, arg, kw) PyObject_Call(func, arg, kw)
#endif

/* PyObjectCallMethO.proto */
#if CYTHON_COMPILING_IN_CPYTHON
static CYTHON_INLINE PyObject* __Pyx_PyObject_CallMethO(PyObject *func, PyObject *arg);
#endif

/* PyObjectFastCall.proto */
#define __Pyx_PyObject_FastCall(func, args, nargs)  __Pyx_PyObject_FastCallDict(func, args, (size_t)(nargs), NULL)
static CYTHON_INLINE PyObject* __Pyx_PyObject_FastCallDict(PyObject *func, PyObject * const*args, size_t nargs, PyObject *kwargs);

/* UnpackUnboundCMethod.proto */
typedef struct {
    PyObject *type;
    PyObject **method_name;
#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING && CYTHON_ATOMICS
    __pyx_atomic_int_type initialized;
#endif
    PyCFunction func;
    PyObject *method;
    int flag;
} __Pyx_CachedCFunction;
#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING
static CYTHON_INLINE int __Pyx_CachedCFunction_GetAndSetInitializing(__Pyx_CachedCFunction *cfunc) {
#if !CYTHON_ATOMICS
    return 1;
#else
    __pyx_nonatomic_int_type expected = 0;
    if (__pyx_atomic_int_cmp_exchange(&cfunc->initialized, &expected, 1)) {
        return 0;
    }
    return expected;
#endif
}
static CYTHON_INLINE void __Pyx_CachedCFunction_SetFinishedInitializing(__Pyx_CachedCFunction *cfunc) {
#if CYTHON_ATOMICS
    __pyx_atomic_store(&cfunc->initialized, 2);
#endif
}
#else
#define __Pyx_CachedCFunction_GetAndSetInitializing(cfunc) 2
#define __Pyx_CachedCFunction_SetFinishedInitializing(cfunc)
#endif

/* CallUnboundCMethod2.proto */
CYTHON_UNUSED
static PyObject* __Pyx__CallUnboundCMethod2(__Pyx_CachedCFunction* cfunc, PyObject* self, PyObject* arg1, PyObject* arg2);
#if CYTHON_COMPILING_IN_CPYTHON
static CYTHON_INLINE PyObject *__Pyx_CallUnboundCMethod2(__Pyx_CachedCFunction *cfunc, PyObject *self, PyObject *arg1, PyObject *arg2);
#else
#define __Pyx_CallUnboundCMethod2(cfunc, self, arg1, arg2)  __Pyx__CallUnboundCMethod2(cfunc, self, arg1, arg2)
#endif

/* RaiseArgTupleInvalid.proto */
static void __Pyx_RaiseArgtupleInvalid(const char* func_name, int exact,
    Py_ssize_t num_min, Py_ssize_t num_max, Py_ssize_t num_found);

/* ArgTypeTest.proto */
#define __Pyx_ArgTypeTest(obj, type, none_allowed, name, exact)\
    ((likely(__Pyx_IS_TYPE(obj, type) | (none_allowed && (obj == Py_None)))) ? 1 :\
        __Pyx__ArgTypeTest(obj, type, name, exact))
static int __Pyx__ArgTypeTest(PyObject *obj, PyTypeObject *type, const char *name, int exact);

/* PyDictVersioning.proto */
#if CYTHON_USE_DICT_VERSIONS && CYTHON_USE_TYPE_SLOTS
#define __PYX_DICT_VERSION_INIT  ((PY_UINT64_T) -1)
#define __PYX_GET_DICT_VERSION(dict)  (((PyDictObject*)(dict))->ma_version_tag)
#define __PYX_UPDATE_DICT_CACHE(dict, value, cache_var, version_var)\
    (version_var) = __PYX_GET_DICT_VERSION(dict);\
    (cache_var) = (value);
#define __PYX_PY_DICT_LOOKUP_IF_MODIFIED(VAR, DICT, LOOKUP) {\
    static PY_UINT64_T __pyx_dict_version = 0;\
    static PyObject *__pyx_dict_cached_value = NULL;\
    if (likely(__PYX_GET_DICT_VERSION(DICT) == __pyx_dict_version)) {\
        (VAR) = __pyx_dict_cached_value;\
    } else {\
        (VAR) = __pyx_dict_cached_value = (LOOKUP);\
        __pyx_dict_version = __PYX_GET_DICT_VERSION(DICT);\
    }\
}
static CYTHON_INLINE PY_UINT64_T __Pyx_get_tp_dict_version(PyObject *obj);
static CYTHON_INLINE PY_UINT64_T __Pyx_get_object_dict_version(PyObject *obj);
static CYTHON_INLINE int __Pyx_object_dict_version_matches(PyObject* obj, PY_UINT64_T tp_dict_version, PY_UINT64_T obj_dict_version);
#else
#define __PYX_GET_DICT_VERSION(dict)  (0)
#define __PYX_UPDATE_DICT_CACHE(dict, value, cache_var, version_var)
#define __PYX_PY_DICT_LOOKUP_IF_MODIFIED(VAR, DICT, LOOKUP)  (VAR) = (LOOKUP);
#endif

/* GetModuleGlobalName.proto */
#if CYTHON_USE_DICT_VERSIONS
#define __Pyx_GetModuleGlobalName(var, name)  do {\
    static PY_UINT64_T __pyx_dict_version = 0;\
    static PyObject *__pyx_dict_cached_value = NULL;\
    (var) = (likely(__pyx_dict_version == __PYX_GET_DICT_VERSION(__pyx_mstate_global->__pyx_d))) ?\
        (likely(__pyx_dict_cached_value) ? __Pyx_NewRef(__pyx_dict_cached_value) : __Pyx_GetBuiltinName(name)) :\
        __Pyx__GetModuleGlobalName(name, &__pyx_dict_version, &__pyx_dict_cached_value);\
} while(0)
#define __Pyx_GetModuleGlobalNameUncached(var, name)  do {\
    PY_UINT64_T __pyx_dict_version;\
    PyObject *__pyx_dict_cached_value;\
    (var) = __Pyx__GetModuleGlobalName(name, &__pyx_dict_version, &__pyx_dict_cached_value);\
} while(0)
static PyObject *__Pyx__GetModuleGlobalName(PyObject *name, PY_UINT64_T *dict_version, PyObject **dict_cached_value);
#else
#define __Pyx_GetModuleGlobalName(var, name)  (var) = __Pyx__GetModuleGlobalName(name)
#define __Pyx_GetModuleGlobalNameUncached(var, name)  (var) = __Pyx__GetModuleGlobalName(name)
static CYTHON_INLINE PyObject *__Pyx__GetModuleGlobalName(PyObject *name);
#endif

/* PyObjectDelAttr.proto */
#if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX < 0x030d0000
#define __Pyx_PyObject_DelAttr(o, n) PyObject_SetAttr(o, n, NULL)
#else
#define __Pyx_PyObject_DelAttr(o, n) PyObject_DelAttr(o, n)
#endif

/* PyObjectSetAttrStr.proto */
#if CYTHON_USE_TYPE_SLOTS
#define __Pyx_PyObject_DelAttrStr(o,n) __Pyx_PyObject_SetAttrStr(o, n, NULL)
static CYTHON_INLINE int __Pyx_PyObject_SetAttrStr(PyObject* obj, PyObject* attr_name, PyObject* value);
#else
#define __Pyx_PyObject_DelAttrStr(o,n)   __Pyx_PyObject_DelAttr(o,n)
#define __Pyx_PyObject_SetAttrStr(o,n,v) PyObject_SetAttr(o,n,v)
#endif

/* PyObjectCallNoArg.proto */
static CYTHON_INLINE PyObject* __Pyx_PyObject_CallNoArg(PyObject *func);

/* PyObjectFormatSimple.proto */
#if CYTHON_COMPILING_IN_PYPY
    #define __Pyx_PyObject_FormatSimple(s, f) (\
        likely(PyUnicode_CheckExact(s)) ? (Py_INCREF(s), s) :\
        PyObject_Format(s, f))
#elif CYTHON_USE_TYPE_SLOTS
    #define __Pyx_PyObject_FormatSimple(s, f) (\
        likely(PyUnicode_CheckExact(s)) ? (Py_INCREF(s), s) :\
        likely(PyLong_CheckExact(s)) ? PyLong_Type.tp_repr(s) :\
        likely(PyFloat_CheckExact(s)) ? PyFloat_Type.tp_repr(s) :\
        PyObject_Format(s, f))
#else
    #define __Pyx_PyObject_FormatSimple(s, f) (\
        likely(PyUnicode_CheckExact(s)) ? (Py_INCREF(s), s) :\
        PyObject_Format(s, f))
#endif

/* PyObject_Unicode.proto */
#define __Pyx_PyObject_Unicode(obj)\
    (likely(PyUnicode_CheckExact(obj)) ? __Pyx_NewRef(obj) : PyObject_Str(obj))

/* PyUnicode_Unicode.proto */
static CYTHON_INLINE PyObject* __Pyx_PyUnicode_Unicode(PyObject *obj);

/* JoinPyUnicode.proto */
static PyObject* __Pyx_PyUnicode_Join(PyObject** values, Py_ssize_t value_count, Py_ssize_t result_ulength,
                                      Py_UCS4 max_char);

/* RaiseTooManyValuesToUnpack.proto */
static CYTHON_INLINE void __Pyx_RaiseTooManyValuesError(Py_ssize_t expected);

/* RaiseNeedMoreValuesToUnpack.proto */
static CYTHON_INLINE void __Pyx_RaiseNeedMoreValuesError(Py_ssize_t index);

/* PyObjectFastCallMethod.proto */
#if CYTHON_VECTORCALL && PY_VERSION_HEX >= 0x03090000
#define __Pyx_PyObject_FastCallMethod(name, args, nargsf) PyObject_VectorcallMethod(name, args, nargsf, NULL)
#else
static PyObject *__Pyx_PyObject_FastCallMethod(PyObject *name, PyObject *const *args, size_t nargsf);
#endif

/* RaiseException.proto */
static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb, PyObject *cause);

/* DictGetItem.proto */
#if !CYTHON_COMPILING_IN_PYPY
static PyObject *__Pyx_PyDict_GetItem(PyObject *d, PyObject* key);
#define __Pyx_PyObject_Dict_GetItem(obj, name)\
    (likely(PyDict_CheckExact(obj)) ?\
     __Pyx_PyDict_GetItem(obj, name) : PyObject_GetItem(obj, name))
#else
#define __Pyx_PyDict_GetItem(d, key) PyObject_GetItem(d, key)
#define __Pyx_PyObject_Dict_GetItem(obj, name)  PyObject_GetItem(obj, name)
#endif

/* PyLongBinop.proto */
#if !CYTHON_COMPILING_IN_PYPY
static CYTHON_INLINE PyObject* __Pyx_PyLong_MultiplyObjC(PyObject *op1, PyObject *op2, long intval, int inplace, int zerodivision_check);
#else
#define __Pyx_PyLong_MultiplyObjC(op1, op2, intval, inplace, zerodivision_check)\
    (inplace ? PyNumber_InPlaceMultiply(op1, op2) : PyNumber_Multiply(op1, op2))
#endif

/* GetTopmostException.proto */
#if CYTHON_USE_EXC_INFO_STACK && CYTHON_FAST_THREAD_STATE
static _PyErr_StackItem * __Pyx_PyErr_GetTopmostException(PyThreadState *tstate);
#endif

/* SaveResetException.proto */
#if CYTHON_FAST_THREAD_STATE
#define __Pyx_ExceptionSave(type, value, tb)  __Pyx__ExceptionSave(__pyx_tstate, type, value, tb)
static CYTHON_INLINE void __Pyx__ExceptionSave(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb);
#define __Pyx_ExceptionReset(type, value, tb)  __Pyx__ExceptionReset(__pyx_tstate, type, value, tb)
static CYTHON_INLINE void __Pyx__ExceptionReset(PyThreadState *tstate, PyObject *type, PyObject *value, PyObject *tb);
#else
#define __Pyx_ExceptionSave(type, value, tb)   PyErr_GetExcInfo(type, value, tb)
#define __Pyx_ExceptionReset(type, value, tb)  PyErr_SetExcInfo(type, value, tb)
#endif

/* GetException.proto */
#if CYTHON_FAST_THREAD_STATE
#define __Pyx_GetException(type, value, tb)  __Pyx__GetException(__pyx_tstate, type, value, tb)
static int __Pyx__GetException(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb);
#else
static int __Pyx_GetException(PyObject **type, PyObject **value, PyObject **tb);
#endif

/* RaiseUnexpectedTypeError.proto */
static int __Pyx_RaiseUnexpectedTypeError(const char *expected, PyObject *obj);

/* ListCompAppend.proto */
#if CYTHON_USE_PYLIST_INTERNALS && CYTHON_ASSUME_SAFE_MACROS
static CYTHON_INLINE int __Pyx_ListComp_Append(PyObject* list, PyObject* x) {
    PyListObject* L = (PyListObject*) list;
    Py_ssize_t len = Py_SIZE(list);
    if (likely(L->allocated > len)) {
        Py_INCREF(x);
        #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030d0000
        L->ob_item[len] = x;
        #else
        PyList_SET_ITEM(list, len, x);
        #endif
        __Pyx_SET_SIZE(list, len + 1);
        return 0;
    }
    return PyList_Append(list, x);
}
#else
#define __Pyx_ListComp_Append(L,x) PyList_Append(L,x)
#endif

/* GetItemInt.proto */
#define __Pyx_GetItemInt(o, i, type, is_signed, to_py_func, is_list, wraparound, boundscheck, has_gil)\
    (__Pyx_fits_Py_ssize_t(i, type, is_signed) ?\
    __Pyx_GetItemInt_Fast(o, (Py_ssize_t)i, is_list, wraparound, boundscheck) :\
    (is_list ? (PyErr_SetString(PyExc_IndexError, "list index out of range"), (PyObject*)NULL) :\
               __Pyx_GetItemInt_Generic(o, to_py_func(i))))
#define __Pyx_GetItemInt_List(o, i, type, is_signed, to_py_func, is_list, wraparound, boundscheck, has_gil)\
    (__Pyx_fits_Py_ssize_t(i, type, is_signed) ?\
    __Pyx_GetItemInt_List_Fast(o, (Py_ssize_t)i, wraparound, boundscheck) :\
    (PyErr_SetString(PyExc_IndexError, "list index out of range"), (PyObject*)NULL))
static CYTHON_INLINE PyObject *__Pyx_GetItemInt_List_Fast(PyObject *o, Py_ssize_t i,
                                                              int wraparound, int boundscheck);
#define __Pyx_GetItemInt_Tuple(o, i, type, is_signed, to_py_func, is_list, wraparound, boundscheck, has_gil)\
    (__Pyx_fits_Py_ssize_t(i, type, is_signed) ?\
    __Pyx_GetItemInt_Tuple_Fast(o, (Py_ssize_t)i, wraparound, boundscheck) :\
    (PyErr_SetString(PyExc_IndexError, "tuple index out of range"), (PyObject*)NULL))
static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Tuple_Fast(PyObject *o, Py_ssize_t i,
                                                              int wraparound, int boundscheck);
static PyObject *__Pyx_GetItemInt_Generic(PyObject *o, PyObject* j);
static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Fast(PyObject *o, Py_ssize_t i,
                                                     int is_list, int wraparound, int boundscheck);

/* IterFinish.proto */
static CYTHON_INLINE int __Pyx_IterFinish(void);

/* PyObjectCallOneArg.proto */
static CYTHON_INLINE PyObject* __Pyx_PyObject_CallOneArg(PyObject *func, PyObject *arg);

/* PyObjectGetMethod.proto */
static int __Pyx_PyObject_GetMethod(PyObject *obj, PyObject *name, PyObject **method);

/* PyObjectCallMethod0.proto */
static PyObject* __Pyx_PyObject_CallMethod0(PyObject* obj, PyObject* method_name);

/* UnpackItemEndCheck.proto */
static int __Pyx_IternextUnpackEndCheck(PyObject *retval, Py_ssize_t expected);

/* RaiseNoneIterError.proto */
static CYTHON_INLINE void __Pyx_RaiseNoneNotIterableError(void);

/* UnpackTupleError.proto */
static void __Pyx_UnpackTupleError(PyObject *, Py_ssize_t index);

/* UnpackTuple2.proto */
static CYTHON_INLINE int __Pyx_unpack_tuple2(
    PyObject* tuple, PyObject** value1, PyObject** value2, int is_tuple, int has_known_size, int decref_tuple);
static CYTHON_INLINE int __Pyx_unpack_tuple2_exact(
    PyObject* tuple, PyObject** value1, PyObject** value2, int decref_tuple);
static int __Pyx_unpack_tuple2_generic(
    PyObject* tuple, PyObject** value1, PyObject** value2, int has_known_size, int decref_tuple);

/* dict_iter.proto */
static CYTHON_INLINE PyObject* __Pyx_dict_iterator(PyObject* dict, int is_dict, PyObject* method_name,
                                                   Py_ssize_t* p_orig_length, int* p_is_dict);
static CYTHON_INLINE int __Pyx_dict_iter_next(PyObject* dict_or_iter, Py_ssize_t orig_length, Py_ssize_t* ppos,
                                              PyObject** pkey, PyObject** pvalue, PyObject** pitem, int is_dict);

/* ListAppend.proto */
#if CYTHON_USE_PYLIST_INTERNALS && CYTHON_ASSUME_SAFE_MACROS
static CYTHON_INLINE int __Pyx_PyList_Append(PyObject* list, PyObject* x) {
    PyListObject* L = (PyListObject*) list;
    Py_ssize_t len = Py_SIZE(list);
    if (likely(L->allocated > len) & likely(len > (L->allocated >> 1))) {
        Py_INCREF(x);
        #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030d0000
        L->ob_item[len] = x;
        #else
        PyList_SET_ITEM(list, len, x);
        #endif
        __Pyx_SET_SIZE(list, len + 1);
        return 0;
    }
    return PyList_Append(list, x);
}
#else
#define __Pyx_PyList_Append(L,x) PyList_Append(L,x)
#endif

/* PyObjectVectorCallKwBuilder.proto */
CYTHON_UNUSED static int __Pyx_VectorcallBuilder_AddArg_Check(PyObject *key, PyObject *value, PyObject *builder, PyObject **args, int n);
#if CYTHON_VECTORCALL
#if PY_VERSION_HEX >= 0x03090000
#define __Pyx_Object_Vectorcall_CallFromBuilder PyObject_Vectorcall
#else
#define __Pyx_Object_Vectorcall_CallFromBuilder _PyObject_Vectorcall
#endif
#define __Pyx_MakeVectorcallBuilderKwds(n) PyTuple_New(n)
static int __Pyx_VectorcallBuilder_AddArg(PyObject *key, PyObject *value, PyObject *builder, PyObject **args, int n);
static int __Pyx_VectorcallBuilder_AddArgStr(const char *key, PyObject *value, PyObject *builder, PyObject **args, int n);
#else
#define __Pyx_Object_Vectorcall_CallFromBuilder __Pyx_PyObject_FastCallDict
#define __Pyx_MakeVectorcallBuilderKwds(n) __Pyx_PyDict_NewPresized(n)
#define __Pyx_VectorcallBuilder_AddArg(key, value, builder, args, n) PyDict_SetItem(builder, key, value)
#define __Pyx_VectorcallBuilder_AddArgStr(key, value, builder, args, n) PyDict_SetItemString(builder, key, value)
#endif

/* PyObjectVectorCallMethodKwBuilder.proto */
#if CYTHON_VECTORCALL && PY_VERSION_HEX >= 0x03090000
#define __Pyx_Object_VectorcallMethod_CallFromBuilder PyObject_VectorcallMethod
#else
static PyObject *__Pyx_Object_VectorcallMethod_CallFromBuilder(PyObject *name, PyObject *const *args, size_t nargsf, PyObject *kwnames);
#endif

/* RaiseUnboundLocalError.proto */
static void __Pyx_RaiseUnboundLocalError(const char *varname);

/* PyObjectFormatAndDecref.proto */
static CYTHON_INLINE PyObject* __Pyx_PyObject_FormatSimpleAndDecref(PyObject* s, PyObject* f);
static CYTHON_INLINE PyObject* __Pyx_PyObject_FormatAndDecref(PyObject* s, PyObject* f);

/* pep479.proto */
static void __Pyx_Generator_Replace_StopIteration(int in_async_gen);

/* PyObjectCall2Args.proto */
static CYTHON_INLINE PyObject* __Pyx_PyObject_Call2Args(PyObject* function, PyObject* arg1, PyObject* arg2);

/* CallUnboundCMethod1.proto */
CYTHON_UNUSED
static PyObject* __Pyx__CallUnboundCMethod1(__Pyx_CachedCFunction* cfunc, PyObject* self, PyObject* arg);
#if CYTHON_COMPILING_IN_CPYTHON
static CYTHON_INLINE PyObject* __Pyx_CallUnboundCMethod1(__Pyx_CachedCFunction* cfunc, PyObject* self, PyObject* arg);
#else
#define __Pyx_CallUnboundCMethod1(cfunc, self, arg)  __Pyx__CallUnboundCMethod1(cfunc, self, arg)
#endif

/* dict_getitem_default.proto */
static PyObject* __Pyx_PyDict_GetItemDefault(PyObject* d, PyObject* key, PyObject* default_value);

/* PySequenceContains.proto */
static CYTHON_INLINE int __Pyx_PySequence_ContainsTF(PyObject* item, PyObject* seq, int eq) {
    int result = PySequence_Contains(seq, item);
    return unlikely(result < 0) ? result : (result == (eq == Py_EQ));
}

/* PyLongBinop.proto */
#if !CYTHON_COMPILING_IN_PYPY
static CYTHON_INLINE PyObject* __Pyx_PyLong_AddObjC(PyObject *op1, PyObject *op2, long intval, int inplace, int zerodivision_check);
#else
#define __Pyx_PyLong_AddObjC(op1, op2, intval, inplace, zerodivision_check)\
    (inplace ? PyNumber_InPlaceAdd(op1, op2) : PyNumber_Add(op1, op2))
#endif

/* GetAttr.proto */
static CYTHON_INLINE PyObject *__Pyx_GetAttr(PyObject *, PyObject *);

/* MergeKeywords.proto */
static int __Pyx_MergeKeywords(PyObject *kwdict, PyObject *source_mapping);

/* SwapException.proto */
#if CYTHON_FAST_THREAD_STATE
#define __Pyx_ExceptionSwap(type, value, tb)  __Pyx__ExceptionSwap(__pyx_tstate, type, value, tb)
static CYTHON_INLINE void __Pyx__ExceptionSwap(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb);
#else
static CYTHON_INLINE void __Pyx_ExceptionSwap(PyObject **type, PyObject **value, PyObject **tb);
#endif

/* SliceObject.proto */
static CYTHON_INLINE PyObject* __Pyx_PyObject_GetSlice(
        PyObject* obj, Py_ssize_t cstart, Py_ssize_t cstop,
        PyObject** py_start, PyObject** py_stop, PyObject** py_slice,
        int has_cstart, int has_cstop, int wraparound);

/* ObjectGetItem.proto */
#if CYTHON_USE_TYPE_SLOTS
static CYTHON_INLINE PyObject *__Pyx_PyObject_GetItem(PyObject *obj, PyObject *key);
#else
#define __Pyx_PyObject_GetItem(obj, key)  PyObject_GetItem(obj, key)
#endif

/* PyLongBinop.proto */
#if !CYTHON_COMPILING_IN_PYPY
static CYTHON_INLINE PyObject* __Pyx_PyLong_RemainderObjC(PyObject *op1, PyObject *op2, long intval, int inplace, int zerodivision_check);
#else
#define __Pyx_PyLong_RemainderObjC(op1, op2, intval, inplace, zerodivision_check)\
    (inplace ? PyNumber_InPlaceRemainder(op1, op2) : PyNumber_Remainder(op1, op2))
#endif

/* PyLongCompare.proto */
static CYTHON_INLINE int __Pyx_PyLong_BoolEqObjC(PyObject *op1, PyObject *op2, long intval, long inplace);

/* PyDictContains.proto */
static CYTHON_INLINE int __Pyx_PyDict_ContainsTF(PyObject* item, PyObject* dict, int eq) {
    int result = PyDict_Contains(dict, item);
    return unlikely(result < 0) ? result : (result == (eq == Py_EQ));
}

/* CallTypeTraverse.proto */
#if !CYTHON_USE_TYPE_SPECS || (!CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x03090000)
#define __Pyx_call_type_traverse(o, always_call, visit, arg) 0
#else
static int __Pyx_call_type_traverse(PyObject *o, int always_call, visitproc visit, void *arg);
#endif

/* LimitedApiGetTypeDict.proto */
#if CYTHON_COMPILING_IN_LIMITED_API
static PyObject *__Pyx_GetTypeDict(PyTypeObject *tp);
#endif

/* SetItemOnTypeDict.proto */
static int __Pyx__SetItemOnTypeDict(PyTypeObject *tp, PyObject *k, PyObject *v);
#define __Pyx_SetItemOnTypeDict(tp, k, v) __Pyx__SetItemOnTypeDict((PyTypeObject*)tp, k, v)

/* FixUpExtensionType.proto */
static CYTHON_INLINE int __Pyx_fix_up_extension_type_from_spec(PyType_Spec *spec, PyTypeObject *type);

/* ValidateBasesTuple.proto */
#if CYTHON_COMPILING_IN_CPYTHON || CYTHON_COMPILING_IN_LIMITED_API || CYTHON_USE_TYPE_SPECS
static int __Pyx_validate_bases_tuple(const char *type_name, Py_ssize_t dictoffset, PyObject *bases);
#endif

/* PyType_Ready.proto */
CYTHON_UNUSED static int __Pyx_PyType_Ready(PyTypeObject *t);

/* ListPack.proto */
static PyObject *__Pyx_PyList_Pack(Py_ssize_t n, ...);

/* Import.proto */
static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, int level);

/* ImportFrom.proto */
static PyObject* __Pyx_ImportFrom(PyObject* module, PyObject* name);

/* ImportDottedModule.proto */
static PyObject *__Pyx_ImportDottedModule(PyObject *name, PyObject *parts_tuple);
static PyObject *__Pyx_ImportDottedModule_WalkParts(PyObject *module, PyObject *name, PyObject *parts_tuple);

/* Py3UpdateBases.proto */
static PyObject* __Pyx_PEP560_update_bases(PyObject *bases);

/* CalculateMetaclass.proto */
static PyObject *__Pyx_CalculateMetaclass(PyTypeObject *metaclass, PyObject *bases);

/* SetNameInClass.proto */
#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX < 0x030d0000
#define __Pyx_SetNameInClass(ns, name, value)\
    (likely(PyDict_CheckExact(ns)) ? _PyDict_SetItem_KnownHash(ns, name, value, ((PyASCIIObject *) name)->hash) : PyObject_SetItem(ns, name, value))
#elif CYTHON_COMPILING_IN_CPYTHON
#define __Pyx_SetNameInClass(ns, name, value)\
    (likely(PyDict_CheckExact(ns)) ? PyDict_SetItem(ns, name, value) : PyObject_SetItem(ns, name, value))
#else
#define __Pyx_SetNameInClass(ns, name, value)  PyObject_SetItem(ns, name, value)
#endif

/* FetchSharedCythonModule.proto */
static PyObject *__Pyx_FetchSharedCythonABIModule(void);

/* dict_setdefault.proto */
static CYTHON_INLINE PyObject *__Pyx_PyDict_SetDefault(PyObject *d, PyObject *key, PyObject *default_value, int is_safe_type);

/* FetchCommonType.proto */
static PyTypeObject* __Pyx_FetchCommonTypeFromSpec(PyTypeObject *metaclass, PyObject *module, PyType_Spec *spec, PyObject *bases);

/* CommonTypesMetaclass.proto */
static int __pyx_CommonTypesMetaclass_init(PyObject *module);
#define __Pyx_CommonTypesMetaclass_USED

/* PyMethodNew.proto */
static PyObject *__Pyx_PyMethod_New(PyObject *func, PyObject *self, PyObject *typ);

/* PyVectorcallFastCallDict.proto */
#if CYTHON_METH_FASTCALL && (CYTHON_VECTORCALL || CYTHON_BACKPORT_VECTORCALL)
static CYTHON_INLINE PyObject *__Pyx_PyVectorcall_FastCallDict(PyObject *func, __pyx_vectorcallfunc vc, PyObject *const *args, size_t nargs, PyObject *kw);
#endif

/* CythonFunctionShared.proto */
#define __Pyx_CyFunction_USED
#define __Pyx_CYFUNCTION_STATICMETHOD  0x01
#define __Pyx_CYFUNCTION_CLASSMETHOD   0x02
#define __Pyx_CYFUNCTION_CCLASS        0x04
#define __Pyx_CYFUNCTION_COROUTINE     0x08
#define __Pyx_CyFunction_GetClosure(f)\
    (((__pyx_CyFunctionObject *) (f))->func_closure)
#if PY_VERSION_HEX < 0x030900B1 || CYTHON_COMPILING_IN_LIMITED_API
  #define __Pyx_CyFunction_GetClassObj(f)\
      (((__pyx_CyFunctionObject *) (f))->func_classobj)
#else
  #define __Pyx_CyFunction_GetClassObj(f)\
      ((PyObject*) ((PyCMethodObject *) (f))->mm_class)
#endif
#define __Pyx_CyFunction_SetClassObj(f, classobj)\
    __Pyx__CyFunction_SetClassObj((__pyx_CyFunctionObject *) (f), (classobj))
#define __Pyx_CyFunction_Defaults(type, f)\
    ((type *)(((__pyx_CyFunctionObject *) (f))->defaults))
#define __Pyx_CyFunction_SetDefaultsGetter(f, g)\
    ((__pyx_CyFunctionObject *) (f))->defaults_getter = (g)
typedef struct {
#if CYTHON_COMPILING_IN_LIMITED_API
    PyObject_HEAD
    PyObject *func;
#elif PY_VERSION_HEX < 0x030900B1
    PyCFunctionObject func;
#else
    PyCMethodObject func;
#endif
#if CYTHON_BACKPORT_VECTORCALL ||\
        (CYTHON_COMPILING_IN_LIMITED_API && CYTHON_METH_FASTCALL)
    __pyx_vectorcallfunc func_vectorcall;
#endif
#if CYTHON_COMPILING_IN_LIMITED_API
    PyObject *func_weakreflist;
#endif
    PyObject *func_dict;
    PyObject *func_name;
    PyObject *func_qualname;
    PyObject *func_doc;
    PyObject *func_globals;
    PyObject *func_code;
    PyObject *func_closure;
#if PY_VERSION_HEX < 0x030900B1 || CYTHON_COMPILING_IN_LIMITED_API
    PyObject *func_classobj;
#endif
    PyObject *defaults;
    int flags;
    PyObject *defaults_tuple;
    PyObject *defaults_kwdict;
    PyObject *(*defaults_getter)(PyObject *);
    PyObject *func_annotations;
    PyObject *func_is_coroutine;
} __pyx_CyFunctionObject;
#undef __Pyx_CyOrPyCFunction_Check
#define __Pyx_CyFunction_Check(obj)  __Pyx_TypeCheck(obj, __pyx_mstate_global->__pyx_CyFunctionType)
#define __Pyx_CyOrPyCFunction_Check(obj)  __Pyx_TypeCheck2(obj, __pyx_mstate_global->__pyx_CyFunctionType, &PyCFunction_Type)
#define __Pyx_CyFunction_CheckExact(obj)  __Pyx_IS_TYPE(obj, __pyx_mstate_global->__pyx_CyFunctionType)
static CYTHON_INLINE int __Pyx__IsSameCyOrCFunction(PyObject *func, void (*cfunc)(void));
#undef __Pyx_IsSameCFunction
#define __Pyx_IsSameCFunction(func, cfunc)   __Pyx__IsSameCyOrCFunction(func, cfunc)
static PyObject *__Pyx_CyFunction_Init(__pyx_CyFunctionObject* op, PyMethodDef *ml,
                                      int flags, PyObject* qualname,
                                      PyObject *closure,
                                      PyObject *module, PyObject *globals,
                                      PyObject* code);
static CYTHON_INLINE void __Pyx__CyFunction_SetClassObj(__pyx_CyFunctionObject* f, PyObject* classobj);
static CYTHON_INLINE PyObject *__Pyx_CyFunction_InitDefaults(PyObject *func,
                                                         PyTypeObject *defaults_type);
static CYTHON_INLINE void __Pyx_CyFunction_SetDefaultsTuple(PyObject *m,
                                                            PyObject *tuple);
static CYTHON_INLINE void __Pyx_CyFunction_SetDefaultsKwDict(PyObject *m,
                                                             PyObject *dict);
static CYTHON_INLINE void __Pyx_CyFunction_SetAnnotationsDict(PyObject *m,
                                                              PyObject *dict);
static int __pyx_CyFunction_init(PyObject *module);
#if CYTHON_METH_FASTCALL
static PyObject * __Pyx_CyFunction_Vectorcall_NOARGS(PyObject *func, PyObject *const *args, size_t nargsf, PyObject *kwnames);
static PyObject * __Pyx_CyFunction_Vectorcall_O(PyObject *func, PyObject *const *args, size_t nargsf, PyObject *kwnames);
static PyObject * __Pyx_CyFunction_Vectorcall_FASTCALL_KEYWORDS(PyObject *func, PyObject *const *args, size_t nargsf, PyObject *kwnames);
static PyObject * __Pyx_CyFunction_Vectorcall_FASTCALL_KEYWORDS_METHOD(PyObject *func, PyObject *const *args, size_t nargsf, PyObject *kwnames);
#if CYTHON_BACKPORT_VECTORCALL || CYTHON_COMPILING_IN_LIMITED_API
#define __Pyx_CyFunction_func_vectorcall(f) (((__pyx_CyFunctionObject*)f)->func_vectorcall)
#else
#define __Pyx_CyFunction_func_vectorcall(f) (((PyCFunctionObject*)f)->vectorcall)
#endif
#endif

/* CythonFunction.proto */
static PyObject *__Pyx_CyFunction_New(PyMethodDef *ml,
                                      int flags, PyObject* qualname,
                                      PyObject *closure,
                                      PyObject *module, PyObject *globals,
                                      PyObject* code);

/* PyObjectLookupSpecial.proto */
#if CYTHON_USE_PYTYPE_LOOKUP && CYTHON_USE_TYPE_SLOTS
#define __Pyx_PyObject_LookupSpecialNoError(obj, attr_name)  __Pyx__PyObject_LookupSpecial(obj, attr_name, 0)
#define __Pyx_PyObject_LookupSpecial(obj, attr_name)  __Pyx__PyObject_LookupSpecial(obj, attr_name, 1)
static CYTHON_INLINE PyObject* __Pyx__PyObject_LookupSpecial(PyObject* obj, PyObject* attr_name, int with_error);
#else
#define __Pyx_PyObject_LookupSpecialNoError(o,n) __Pyx_PyObject_GetAttrStrNoError(o,n)
#define __Pyx_PyObject_LookupSpecial(o,n) __Pyx_PyObject_GetAttrStr(o,n)
#endif

/* Py3ClassCreate.proto */
static PyObject *__Pyx_Py3MetaclassPrepare(PyObject *metaclass, PyObject *bases, PyObject *name, PyObject *qualname,
                                           PyObject *mkw, PyObject *modname, PyObject *doc);
static PyObject *__Pyx_Py3ClassCreate(PyObject *metaclass, PyObject *name, PyObject *bases, PyObject *dict,
                                      PyObject *mkw, int calculate_metaclass, int allow_py2_metaclass);

/* CLineInTraceback.proto */
#if CYTHON_CLINE_IN_TRACEBACK && CYTHON_CLINE_IN_TRACEBACK_RUNTIME
static int __Pyx_CLineForTraceback(PyThreadState *tstate, int c_line);
#else
#define __Pyx_CLineForTraceback(tstate, c_line)  (((CYTHON_CLINE_IN_TRACEBACK)) ? c_line : 0)
#endif

/* CodeObjectCache.proto */
#if CYTHON_COMPILING_IN_LIMITED_API
typedef PyObject __Pyx_CachedCodeObjectType;
#else
typedef PyCodeObject __Pyx_CachedCodeObjectType;
#endif
typedef struct {
    __Pyx_CachedCodeObjectType* code_object;
    int code_line;
} __Pyx_CodeObjectCacheEntry;
struct __Pyx_CodeObjectCache {
    int count;
    int max_count;
    __Pyx_CodeObjectCacheEntry* entries;
  #if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING
    __pyx_atomic_int_type accessor_count;
  #endif
};
static int __pyx_bisect_code_objects(__Pyx_CodeObjectCacheEntry* entries, int count, int code_line);
static __Pyx_CachedCodeObjectType *__pyx_find_code_object(int code_line);
static void __pyx_insert_code_object(int code_line, __Pyx_CachedCodeObjectType* code_object);

/* AddTraceback.proto */
static void __Pyx_AddTraceback(const char *funcname, int c_line,
                               int py_line, const char *filename);

/* GCCDiagnostics.proto */
#if !defined(__INTEL_COMPILER) && defined(__GNUC__) && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 6))
#define __Pyx_HAS_GCC_DIAGNOSTIC
#endif

/* CIntToPy.proto */
static CYTHON_INLINE PyObject* __Pyx_PyLong_From_long(long value);

/* FormatTypeName.proto */
#if CYTHON_COMPILING_IN_LIMITED_API
typedef PyObject *__Pyx_TypeName;
#define __Pyx_FMT_TYPENAME "%U"
#define __Pyx_DECREF_TypeName(obj) Py_XDECREF(obj)
#if __PYX_LIMITED_VERSION_HEX >= 0x030d0000
#define __Pyx_PyType_GetFullyQualifiedName PyType_GetFullyQualifiedName
#else
static __Pyx_TypeName __Pyx_PyType_GetFullyQualifiedName(PyTypeObject* tp);
#endif
#else  // !LIMITED_API
typedef const char *__Pyx_TypeName;
#define __Pyx_FMT_TYPENAME "%.200s"
#define __Pyx_PyType_GetFullyQualifiedName(tp) ((tp)->tp_name)
#define __Pyx_DECREF_TypeName(obj)
#endif

/* CIntFromPy.proto */
static CYTHON_INLINE long __Pyx_PyLong_As_long(PyObject *);

/* CIntFromPy.proto */
static CYTHON_INLINE int __Pyx_PyLong_As_int(PyObject *);

/* FastTypeChecks.proto */
#if CYTHON_COMPILING_IN_CPYTHON
#define __Pyx_TypeCheck(obj, type) __Pyx_IsSubtype(Py_TYPE(obj), (PyTypeObject *)type)
#define __Pyx_TypeCheck2(obj, type1, type2) __Pyx_IsAnySubtype2(Py_TYPE(obj), (PyTypeObject *)type1, (PyTypeObject *)type2)
static CYTHON_INLINE int __Pyx_IsSubtype(PyTypeObject *a, PyTypeObject *b);
static CYTHON_INLINE int __Pyx_IsAnySubtype2(PyTypeObject *cls, PyTypeObject *a, PyTypeObject *b);
static CYTHON_INLINE int __Pyx_PyErr_GivenExceptionMatches(PyObject *err, PyObject *type);
static CYTHON_INLINE int __Pyx_PyErr_GivenExceptionMatches2(PyObject *err, PyObject *type1, PyObject *type2);
#else
#define __Pyx_TypeCheck(obj, type) PyObject_TypeCheck(obj, (PyTypeObject *)type)
#define __Pyx_TypeCheck2(obj, type1, type2) (PyObject_TypeCheck(obj, (PyTypeObject *)type1) || PyObject_TypeCheck(obj, (PyTypeObject *)type2))
#define __Pyx_PyErr_GivenExceptionMatches(err, type) PyErr_GivenExceptionMatches(err, type)
static CYTHON_INLINE int __Pyx_PyErr_GivenExceptionMatches2(PyObject *err, PyObject *type1, PyObject *type2) {
    return PyErr_GivenExceptionMatches(err, type1) || PyErr_GivenExceptionMatches(err, type2);
}
#endif
#define __Pyx_PyErr_ExceptionMatches2(err1, err2)  __Pyx_PyErr_GivenExceptionMatches2(__Pyx_PyErr_CurrentExceptionType(), err1, err2)
#define __Pyx_PyException_Check(obj) __Pyx_TypeCheck(obj, PyExc_Exception)
#ifdef PyExceptionInstance_Check
  #define __Pyx_PyBaseException_Check(obj) PyExceptionInstance_Check(obj)
#else
  #define __Pyx_PyBaseException_Check(obj) __Pyx_TypeCheck(obj, PyExc_BaseException)
#endif

/* IterNextPlain.proto */
static CYTHON_INLINE PyObject *__Pyx_PyIter_Next_Plain(PyObject *iterator);
#if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX < 0x030A0000
static PyObject *__Pyx_GetBuiltinNext_LimitedAPI(void);
#endif

/* PyObjectCallMethod1.proto */
static PyObject* __Pyx_PyObject_CallMethod1(PyObject* obj, PyObject* method_name, PyObject* arg);

/* ReturnWithStopIteration.proto */
static CYTHON_INLINE void __Pyx_ReturnWithStopIteration(PyObject* value, int async, int iternext);

/* CoroutineBase.proto */
struct __pyx_CoroutineObject;
typedef PyObject *(*__pyx_coroutine_body_t)(struct __pyx_CoroutineObject *, PyThreadState *, PyObject *);
#if CYTHON_USE_EXC_INFO_STACK
#define __Pyx_ExcInfoStruct  _PyErr_StackItem
#else
typedef struct {
    PyObject *exc_type;
    PyObject *exc_value;
    PyObject *exc_traceback;
} __Pyx_ExcInfoStruct;
#endif
typedef struct __pyx_CoroutineObject {
    PyObject_HEAD
    __pyx_coroutine_body_t body;
    PyObject *closure;
    __Pyx_ExcInfoStruct gi_exc_state;
    PyObject *gi_weakreflist;
    PyObject *classobj;
    PyObject *yieldfrom;
    __Pyx_pyiter_sendfunc yieldfrom_am_send;
    PyObject *gi_name;
    PyObject *gi_qualname;
    PyObject *gi_modulename;
    PyObject *gi_code;
    PyObject *gi_frame;
#if CYTHON_USE_SYS_MONITORING && (CYTHON_PROFILE || CYTHON_TRACE)
    PyMonitoringState __pyx_pymonitoring_state[__Pyx_MonitoringEventTypes_CyGen_count];
    uint64_t __pyx_pymonitoring_version;
#endif
    int resume_label;
    char is_running;
} __pyx_CoroutineObject;
static __pyx_CoroutineObject *__Pyx__Coroutine_New(
    PyTypeObject *type, __pyx_coroutine_body_t body, PyObject *code, PyObject *closure,
    PyObject *name, PyObject *qualname, PyObject *module_name);
static __pyx_CoroutineObject *__Pyx__Coroutine_NewInit(
            __pyx_CoroutineObject *gen, __pyx_coroutine_body_t body, PyObject *code, PyObject *closure,
            PyObject *name, PyObject *qualname, PyObject *module_name);
static CYTHON_INLINE void __Pyx_Coroutine_ExceptionClear(__Pyx_ExcInfoStruct *self);
static int __Pyx_Coroutine_clear(PyObject *self);
static __Pyx_PySendResult __Pyx_Coroutine_AmSend(PyObject *self, PyObject *value, PyObject **retval);
static PyObject *__Pyx_Coroutine_Send(PyObject *self, PyObject *value);
static __Pyx_PySendResult __Pyx_Coroutine_Close(PyObject *self, PyObject **retval);
static PyObject *__Pyx_Coroutine_Throw(PyObject *gen, PyObject *args);
#if CYTHON_USE_EXC_INFO_STACK
#define __Pyx_Coroutine_SwapException(self)
#define __Pyx_Coroutine_ResetAndClearException(self)  __Pyx_Coroutine_ExceptionClear(&(self)->gi_exc_state)
#else
#define __Pyx_Coroutine_SwapException(self) {\
    __Pyx_ExceptionSwap(&(self)->gi_exc_state.exc_type, &(self)->gi_exc_state.exc_value, &(self)->gi_exc_state.exc_traceback);\
    __Pyx_Coroutine_ResetFrameBackpointer(&(self)->gi_exc_state);\
    }
#define __Pyx_Coroutine_ResetAndClearException(self) {\
    __Pyx_ExceptionReset((self)->gi_exc_state.exc_type, (self)->gi_exc_state.exc_value, (self)->gi_exc_state.exc_traceback);\
    (self)->gi_exc_state.exc_type = (self)->gi_exc_state.exc_value = (self)->gi_exc_state.exc_traceback = NULL;\
    }
#endif
#if CYTHON_FAST_THREAD_STATE
#define __Pyx_PyGen_FetchStopIterationValue(pvalue)\
    __Pyx_PyGen__FetchStopIterationValue(__pyx_tstate, pvalue)
#else
#define __Pyx_PyGen_FetchStopIterationValue(pvalue)\
    __Pyx_PyGen__FetchStopIterationValue(__Pyx_PyThreadState_Current, pvalue)
#endif
static int __Pyx_PyGen__FetchStopIterationValue(PyThreadState *tstate, PyObject **pvalue);
static CYTHON_INLINE void __Pyx_Coroutine_ResetFrameBackpointer(__Pyx_ExcInfoStruct *exc_state);
static char __Pyx_Coroutine_test_and_set_is_running(__pyx_CoroutineObject *gen);
static void __Pyx_Coroutine_unset_is_running(__pyx_CoroutineObject *gen);
static char __Pyx_Coroutine_get_is_running(__pyx_CoroutineObject *gen);
static PyObject *__Pyx_Coroutine_get_is_running_getter(PyObject *gen, void *closure);
#if __PYX_HAS_PY_AM_SEND == 2
static void __Pyx_SetBackportTypeAmSend(PyTypeObject *type, __Pyx_PyAsyncMethodsStruct *static_amsend_methods, __Pyx_pyiter_sendfunc am_send);
#endif
static PyObject *__Pyx_Coroutine_fail_reduce_ex(PyObject *self, PyObject *arg);

/* Generator.proto */
#define __Pyx_Generator_USED
#define __Pyx_Generator_CheckExact(obj) __Pyx_IS_TYPE(obj, __pyx_mstate_global->__pyx_GeneratorType)
#define __Pyx_Generator_New(body, code, closure, name, qualname, module_name)\
    __Pyx__Coroutine_New(__pyx_mstate_global->__pyx_GeneratorType, body, code, closure, name, qualname, module_name)
static PyObject *__Pyx_Generator_Next(PyObject *self);
static int __pyx_Generator_init(PyObject *module);
static CYTHON_INLINE PyObject *__Pyx_Generator_GetInlinedResult(PyObject *self);

/* CStringEquals.proto */
static CYTHON_INLINE int __Pyx_StrEq(const char *, const char *);

/* GetRuntimeVersion.proto */
static unsigned long __Pyx_get_runtime_version(void);

/* CheckBinaryVersion.proto */
static int __Pyx_check_binary_version(unsigned long ct_version, unsigned long rt_version, int allow_newer);

/* MultiPhaseInitModuleState.proto */
#if CYTHON_PEP489_MULTI_PHASE_INIT && CYTHON_USE_MODULE_STATE
static PyObject *__Pyx_State_FindModule(void*);
static int __Pyx_State_AddModule(PyObject* module, void*);
static int __Pyx_State_RemoveModule(void*);
#elif CYTHON_USE_MODULE_STATE
#define __Pyx_State_FindModule PyState_FindModule
#define __Pyx_State_AddModule PyState_AddModule
#define __Pyx_State_RemoveModule PyState_RemoveModule
#endif

/* #### Code section: module_declarations ### */
/* CythonABIVersion.proto */
#if CYTHON_COMPILING_IN_LIMITED_API
    #if CYTHON_METH_FASTCALL
        #define __PYX_FASTCALL_ABI_SUFFIX  "_fastcall"
    #else
        #define __PYX_FASTCALL_ABI_SUFFIX
    #endif
    #define __PYX_LIMITED_ABI_SUFFIX "limited" __PYX_FASTCALL_ABI_SUFFIX __PYX_AM_SEND_ABI_SUFFIX
#else
    #define __PYX_LIMITED_ABI_SUFFIX
#endif
#if __PYX_HAS_PY_AM_SEND == 1
    #define __PYX_AM_SEND_ABI_SUFFIX
#elif __PYX_HAS_PY_AM_SEND == 2
    #define __PYX_AM_SEND_ABI_SUFFIX "amsendbackport"
#else
    #define __PYX_AM_SEND_ABI_SUFFIX "noamsend"
#endif
#ifndef __PYX_MONITORING_ABI_SUFFIX
    #define __PYX_MONITORING_ABI_SUFFIX
#endif
#if CYTHON_USE_TP_FINALIZE
    #define __PYX_TP_FINALIZE_ABI_SUFFIX
#else
    #define __PYX_TP_FINALIZE_ABI_SUFFIX "nofinalize"
#endif
#if CYTHON_USE_FREELISTS || !defined(__Pyx_AsyncGen_USED)
    #define __PYX_FREELISTS_ABI_SUFFIX
#else
    #define __PYX_FREELISTS_ABI_SUFFIX "nofreelists"
#endif
#define CYTHON_ABI  __PYX_ABI_VERSION __PYX_LIMITED_ABI_SUFFIX __PYX_MONITORING_ABI_SUFFIX __PYX_TP_FINALIZE_ABI_SUFFIX __PYX_FREELISTS_ABI_SUFFIX __PYX_AM_SEND_ABI_SUFFIX
#define __PYX_ABI_MODULE_NAME "_cython_" CYTHON_ABI
#define __PYX_TYPE_MODULE_PREFIX __PYX_ABI_MODULE_NAME "."


/* Module declarations from "cython" */

/* Module declarations from "unicorn_binance_rest_api.manager" */
/* #### Code section: typeinfo ### */
/* #### Code section: before_global_var ### */
#define __Pyx_MODULE_NAME "unicorn_binance_rest_api.manager"
extern int __pyx_module_is_main_unicorn_binance_rest_api__manager;
int __pyx_module_is_main_unicorn_binance_rest_api__manager = 0;

/* Implementation of "unicorn_binance_rest_api.manager" */
/* #### Code section: global_var ### */
static PyObject *__pyx_builtin_object;
static PyObject *__pyx_builtin_staticmethod;
static PyObject *__pyx_builtin_print;
static PyObject *__pyx_builtin_KeyError;
static PyObject *__pyx_builtin_reversed;
static PyObject *__pyx_builtin_enumerate;
static PyObject *__pyx_builtin_ValueError;
static PyObject *__pyx_builtin_AttributeError;
/* #### Code section: string_decls ### */
static const char __pyx_k_[] = " ";
static const char __pyx_k_1[] = "\320\004+\320+;\2701";
static const char __pyx_k_M[] = "M";
static const char __pyx_k_T[] = "T";
static const char __pyx_k_a[] = "a";
static const char __pyx_k_d[] = "d";
static const char __pyx_k_f[] = "f";
static const char __pyx_k_i[] = "i";
static const char __pyx_k_l[] = "l";
static const char __pyx_k_m[] = "m";
static const char __pyx_k_o[] = "o";
static const char __pyx_k_p[] = "p";
static const char __pyx_k_q[] = "q";
static const char __pyx_k_t[] = "t";
static const char __pyx_k_v[] = "v";
static const char __pyx_k_1M[] = "1M";
static const char __pyx_k_1d[] = "1d";
static const char __pyx_k_1h[] = "1h";
static const char __pyx_k_1m[] = "1m";
static const char __pyx_k_1s[] = "1s";
static const char __pyx_k_1w[] = "1w";
static const char __pyx_k_22[] = "%22";
static const char __pyx_k_27[] = "%27";
static const char __pyx_k_2h[] = "2h";
static const char __pyx_k_3d[] = "3d";
static const char __pyx_k_3m[] = "3m";
static const char __pyx_k_4h[] = "4h";
static const char __pyx_k_5m[] = "5m";
static const char __pyx_k_6h[] = "6h";
static const char __pyx_k_8h[] = "8h";
static const char __pyx_k_K1[] = "\320\004K\3101";
static const char __pyx_k__2[] = "`";
static const char __pyx_k__3[] = ":";
static const char __pyx_k__4[] = "@";
static const char __pyx_k__5[] = "_";
static const char __pyx_k__6[] = " - ";
static const char __pyx_k__7[] = "/";
static const char __pyx_k__8[] = "&";
static const char __pyx_k__9[] = "{}={}";
static const char __pyx_k_gc[] = "gc";
static const char __pyx_k_id[] = "id";
static const char __pyx_k_v1[] = "v1";
static const char __pyx_k_v2[] = "v2";
static const char __pyx_k_v3[] = "v3";
static const char __pyx_k_12h[] = "12h";
static const char __pyx_k_15m[] = "15m";
static const char __pyx_k_30m[] = "30m";
static const char __pyx_k_ACK[] = "ACK";
static const char __pyx_k_A_t[] = "\200A\360\014\000\t\020\210t\320\023(\250\001\250\027\260\001";
static const char __pyx_k_BUY[] = "BUY";
static const char __pyx_k_FOK[] = "FOK";
static const char __pyx_k_GTC[] = "GTC";
static const char __pyx_k_IOC[] = "IOC";
static const char __pyx_k_NEW[] = "NEW";
static const char __pyx_k__10[] = "=";
static const char __pyx_k__11[] = ".";
static const char __pyx_k__12[] = "*";
static const char __pyx_k__13[] = "?";
static const char __pyx_k__14[] = "\260\001";
static const char __pyx_k_bal[] = "bal";
static const char __pyx_k_dev[] = ".dev";
static const char __pyx_k_doc[] = "__doc__";
static const char __pyx_k_get[] = "get";
static const char __pyx_k_idx[] = "idx";
static const char __pyx_k_int[] = "int";
static const char __pyx_k_key[] = "key";
static const char __pyx_k_msg[] = "msg";
static const char __pyx_k_new[] = "new";
static const char __pyx_k_pop[] = "pop";
static const char __pyx_k_put[] = "put";
static const char __pyx_k_res[] = "res";
static const char __pyx_k_str[] = "str";
static const char __pyx_k_tld[] = "tld";
static const char __pyx_k_uri[] = "uri";
static const char __pyx_k_url[] = "url";
static const char __pyx_k_A_t1[] = "\200A\360\014\000\t\020\210t\2201";
static const char __pyx_k_Date[] = "Date";
static const char __pyx_k_FULL[] = "FULL";
static const char __pyx_k_None[] = "None";
static const char __pyx_k_SELL[] = "SELL";
static const char __pyx_k_SPOT[] = "SPOT";
static const char __pyx_k_bool[] = "bool";
static const char __pyx_k_data[] = "data";
static const char __pyx_k_dict[] = "dict";
static const char __pyx_k_exit[] = "__exit__";
static const char __pyx_k_func[] = "__func__";
static const char __pyx_k_hmac[] = "hmac";
static const char __pyx_k_http[] = "http";
static const char __pyx_k_info[] = "info";
static const char __pyx_k_init[] = "init";
static const char __pyx_k_item[] = "item";
static const char __pyx_k_json[] = "json";
static const char __pyx_k_main[] = "__main__";
static const char __pyx_k_name[] = "name";
static const char __pyx_k_next[] = "next";
static const char __pyx_k_path[] = "path";
static const char __pyx_k_ping[] = "ping";
static const char __pyx_k_post[] = "post";
static const char __pyx_k_self[] = "self";
static const char __pyx_k_send[] = "send";
static const char __pyx_k_side[] = "side";
static const char __pyx_k_sort[] = "sort";
static const char __pyx_k_spec[] = "__spec__";
static const char __pyx_k_test[] = "__test__";
static const char __pyx_k_text[] = "text";
static const char __pyx_k_time[] = "time";
static const char __pyx_k_type[] = "type";
static const char __pyx_k_2_8_0[] = "2.8.0";
static const char __pyx_k_A_4_q[] = "\200A\360\026\000\t\024\2204\320\027(\250\001\250\027\260\001\330\010\017\210q";
static const char __pyx_k_A_t_Q[] = "\200A\360\014\000\t\020\210t\320\023(\250\001\250\030\260\031\270&\300\005\300Q";
static const char __pyx_k_A_t_U[] = "\200A\360\016\000\t\020\210t\320\023(\250\001\250\027\260\r\270U\300!";
static const char __pyx_k_A_t_a[] = "\200A\360\014\000\t\020\210t\320\023(\250\001\250\027\260\t\270\025\270a";
static const char __pyx_k_A_t_b[] = "\200A\330\010\017\210t\220=\240\002\240$\240b\250\001";
static const char __pyx_k_A_t_q[] = "\200A\360\014\000\t\020\210t\320\023(\250\001\250\027\260\n\270%\270q";
static const char __pyx_k_LIMIT[] = "LIMIT";
static const char __pyx_k_asset[] = "asset";
static const char __pyx_k_close[] = "close";
static const char __pyx_k_debug[] = "debug";
static const char __pyx_k_depth[] = "depth";
static const char __pyx_k_enter[] = "__enter__";
static const char __pyx_k_entry[] = "entry";
static const char __pyx_k_get_2[] = "_get";
static const char __pyx_k_https[] = "https";
static const char __pyx_k_items[] = "items";
static const char __pyx_k_kline[] = "kline";
static const char __pyx_k_limit[] = "limit";
static const char __pyx_k_lower[] = "lower";
static const char __pyx_k_order[] = "order";
static const char __pyx_k_print[] = "print";
static const char __pyx_k_put_2[] = "_put";
static const char __pyx_k_sleep[] = "sleep";
static const char __pyx_k_throw[] = "throw";
static const char __pyx_k_tld_2[] = "tld: ";
static const char __pyx_k_upper[] = "upper";
static const char __pyx_k_utf_8[] = "utf-8";
static const char __pyx_k_value[] = "value";
static const char __pyx_k_AGG_ID[] = "AGG_ID";
static const char __pyx_k_A_t5_5[] = "\200A\360:\000\t\020\210t\2205\230\001\230\032\2405\250\001";
static const char __pyx_k_A_t5_Q[] = "\200A\360\036\000\t\020\210t\2205\230\001\230\030\240\030\250\024\250Q";
static const char __pyx_k_A_t_V5[] = "\200A\360\016\000\t\020\210t\320\023(\250\001\250\027\260\r\270V\3005\310\001";
static const char __pyx_k_A_t_fE[] = "\200A\360\016\000\t\020\210t\320\023(\250\001\250\027\260\016\270f\300E\310\021";
static const char __pyx_k_A_t_uA[] = "\200A\360\014\000\t\020\210t\320\023(\250\001\250\027\260\017\270u\300A";
static const char __pyx_k_A_t_vU[] = "\200A\360\014\000\t\020\210t\320\023(\250\001\250\030\260\036\270v\300U\310!";
static const char __pyx_k_Accept[] = "Accept";
static const char __pyx_k_FILLED[] = "FILLED";
static const char __pyx_k_MARKET[] = "MARKET";
static const char __pyx_k_RESULT[] = "RESULT";
static const char __pyx_k_cached[] = "cached";
static const char __pyx_k_delete[] = "delete";
static const char __pyx_k_enable[] = "enable";
static const char __pyx_k_encode[] = "encode";
static const char __pyx_k_end_ts[] = "end_ts";
static const char __pyx_k_format[] = "format";
static const char __pyx_k_fromId[] = "fromId";
static const char __pyx_k_income[] = "income";
static const char __pyx_k_init_2[] = "__init__";
static const char __pyx_k_klines[] = "klines";
static const char __pyx_k_kwargs[] = "kwargs";
static const char __pyx_k_logger[] = "logger";
static const char __pyx_k_method[] = "method";
static const char __pyx_k_module[] = "__module__";
static const char __pyx_k_name_2[] = "__name__";
static const char __pyx_k_object[] = "object";
static const char __pyx_k_output[] = "output";
static const char __pyx_k_params[] = "params";
static const char __pyx_k_post_2[] = "_post";
static const char __pyx_k_python[] = "-python_";
static const char __pyx_k_q_t_hk[] = "\320\004\031\320\031/\250q\330\010\017\210t\220=\240\001\240\027\250\006\250h\260k\300\021";
static const char __pyx_k_result[] = "result";
static const char __pyx_k_return[] = "return";
static const char __pyx_k_sha256[] = "sha256";
static const char __pyx_k_signed[] = "signed";
static const char __pyx_k_socks5[] = "socks5://";
static const char __pyx_k_status[] = "status";
static const char __pyx_k_symbol[] = "symbol";
static const char __pyx_k_system[] = "system";
static const char __pyx_k_trades[] = "trades";
static const char __pyx_k_typing[] = "typing";
static const char __pyx_k_update[] = "update";
static const char __pyx_k_verify[] = "verify";
static const char __pyx_k_weight[] = "weight";
static const char __pyx_k_2_t_6_A[] = "\320\004\034\320\0342\260!\330\010\017\210t\220=\240\001\240\032\2506\260\030\270\033\300A";
static const char __pyx_k_A0_t5_Q[] = "\200A\3600\000\t\020\210t\2205\230\001\320\031)\250\030\260\024\260Q";
static const char __pyx_k_AJ_t5_Q[] = "\200A\360J\001\000\t\020\210t\2205\230\001\230\031\240&\250\005\250Q";
static const char __pyx_k_API_KEY[] = "API_KEY";
static const char __pyx_k_API_URL[] = "API_URL";
static const char __pyx_k_A_t5_hd[] = "\200A\360<\000\t\020\210t\2205\230\001\320\031.\250h\260d\270!";
static const char __pyx_k_A_t6_vU[] = "\200A\360|\001\000\t\020\210t\2206\230\021\230-\240v\250U\260!";
static const char __pyx_k_A_t_0DE[] = "\200A\360\014\000\t\020\210t\320\023(\250\001\250\027\3200D\300E\310\021";
static const char __pyx_k_A_t_0EU[] = "\200A\360\014\000\t\020\210t\320\023(\250\001\250\027\3200E\300U\310!";
static const char __pyx_k_A_t_0_Q[] = "\200A\360\014\000\t\020\210t\320\023(\250\001\250\027\3200@\300\005\300Q";
static const char __pyx_k_A_t_Q_2[] = "\200A\360\016\000\t\020\210t\320\023(\250\001\250\032\260?\300&\310\005\310Q";
static const char __pyx_k_A_t_Q_3[] = "\200A\360\016\000\t\020\210t\320\023(\250\001\250\027\260\n\270&\300\005\300Q";
static const char __pyx_k_A_t_QgQ[] = "\200A\360\016\000\t\020\210t\320\023-\250Q\250g\260Q";
static const char __pyx_k_A_t_q_q[] = "\200A\360\"\000\t\020\210t\320\023'\240q\250\007\250q";
static const char __pyx_k_EXPIRED[] = "EXPIRED";
static const char __pyx_k_Release[] = "Release ";
static const char __pyx_k_account[] = "account";
static const char __pyx_k_api_key[] = "api_key";
static const char __pyx_k_balance[] = "balance";
static const char __pyx_k_bnbBurn[] = "bnbBurn";
static const char __pyx_k_disable[] = "disable";
static const char __pyx_k_endTime[] = "endTime";
static const char __pyx_k_end_str[] = "end_str";
static const char __pyx_k_genexpr[] = "genexpr";
static const char __pyx_k_hashlib[] = "hashlib";
static const char __pyx_k_headers[] = "headers";
static const char __pyx_k_helpers[] = "helpers";
static const char __pyx_k_last_id[] = "last_id";
static const char __pyx_k_logging[] = "logging";
static const char __pyx_k_options[] = "options";
static const char __pyx_k_prepare[] = "__prepare__";
static const char __pyx_k_proxies[] = "proxies";
static const char __pyx_k_release[] = "release";
static const char __pyx_k_replace[] = "replace";
static const char __pyx_k_request[] = "_request";
static const char __pyx_k_respond[] = "respond";
static const char __pyx_k_session[] = "session";
static const char __pyx_k_sigterm[] = "sigterm";
static const char __pyx_k_started[] = " started ...";
static const char __pyx_k_success[] = "success";
static const char __pyx_k_symbols[] = "symbols";
static const char __pyx_k_timeout[] = "timeout";
static const char __pyx_k_transTo[] = "transTo";
static const char __pyx_k_unknown[] = "unknown";
static const char __pyx_k_version[] = "__version__";
static const char __pyx_k_warning[] = "warning";
static const char __pyx_k_AF_t5_V5[] = "\200A\360F\001\000\t\020\210t\2205\230\001\230\034\240V\2505\260\001";
static const char __pyx_k_AF_t5_vU[] = "\200A\360F\001\000\t\020\210t\2205\230\001\230\036\240v\250U\260!";
static const char __pyx_k_AGG_TIME[] = "AGG_TIME";
static const char __pyx_k_AN_t5_fE[] = "\200A\360N\001\000\t\020\210t\2205\230\001\230\035\240f\250E\260\021";
static const char __pyx_k_AN_t6_e1[] = "\200A\360N\001\000\t\020\210t\2206\230\021\230.\250\006\250e\2601";
static const char __pyx_k_A_t5_Q_2[] = "\200A\360\"\000\t\020\210t\2205\230\001\230\030\240\030\250\024\250Q";
static const char __pyx_k_A_t5_U_a[] = "\200A\360>\000\t\020\210t\2205\230\001\320\031-\250U\260(\270(\300$\300a";
static const char __pyx_k_A_t81IV5[] = "\200A\360<\000\t\020\210t\2208\2301\230I\240V\2505\260\001";
static const char __pyx_k_A_t81N_Q[] = "\200A\360^\003\000\t\020\210t\2208\2301\230N\250&\260\005\260Q";
static const char __pyx_k_A_t_0GuA[] = "\200A\360\014\000\t\020\210t\320\023(\250\001\250\027\3200G\300u\310A";
static const char __pyx_k_A_t_0I_a[] = "\200A\360\014\000\t\020\210t\320\023(\250\001\250\027\3200I\310\025\310a";
static const char __pyx_k_A_t_9F_q[] = "\200A\360\016\000\t\020\210t\320\023(\250\001\250\032\2609\270F\300%\300q";
static const char __pyx_k_A_t_Q_V5[] = "\200A\360\014\000\t\020\210t\320\023-\250Q\330\014\023\320\023-\250V\2605\270\001";
static const char __pyx_k_A_t_Q_fE[] = "\200A\360\016\000\t\020\210t\320\023-\250Q\330\014\024\320\024&\240f\250E\260\021";
static const char __pyx_k_A_t_Q_vU[] = "\200A\360\016\000\t\020\210t\320\023-\250Q\330\014\023\220=\240\007\240v\250U\260!";
static const char __pyx_k_A_t_Qg_E[] = "\200A\360\014\000\t\020\210t\320\023-\250Q\250g\260_\300E\310\021";
static const char __pyx_k_A_t_Qg_q[] = "\200A\360\020\000\t\020\210t\320\023-\250Q\250g\260]\300%\300q";
static const char __pyx_k_A_t_Rt2Q[] = "\200A\330\010\017\210t\320\023%\240R\240t\2502\250Q";
static const char __pyx_k_A_t_V5_2[] = "\200A\360\016\000\t\020\210t\320\023(\250\001\250\030\260\034\270V\3005\310\001";
static const char __pyx_k_A_t_q_e1[] = "\200A\360<\000\t\020\210t\320\023'\240q\250\007\250\270e\3001";
static const char __pyx_k_A_t_q_uA[] = "\200A\360:\000\t\020\210t\320\023'\240q\250\007\320/?\270u\300A";
static const char __pyx_k_A_t_uA_2[] = "\200A\360\016\000\t\020\210t\320\023(\250\001\250\027\260\t\270\026\270u\300A";
static const char __pyx_k_C2C_MAIN[] = "C2C_MAIN";
static const char __pyx_k_CANCELED[] = "CANCELED";
static const char __pyx_k_KeyError[] = "KeyError";
static const char __pyx_k_MAIN_C2C[] = "MAIN_C2C";
static const char __pyx_k_Optional[] = "Optional";
static const char __pyx_k_REJECTED[] = "REJECTED";
static const char __pyx_k_SIDE_BUY[] = "SIDE_BUY";
static const char __pyx_k_add_note[] = "add_note";
static const char __pyx_k_app_name[] = "__app_name__";
static const char __pyx_k_avgPrice[] = "avgPrice";
static const char __pyx_k_balances[] = "balances";
static const char __pyx_k_colorama[] = "colorama";
static const char __pyx_k_critical[] = "critical";
static const char __pyx_k_datetime[] = "datetime";
static const char __pyx_k_delete_2[] = "_delete";
static const char __pyx_k_exc_type[] = "exc_type";
static const char __pyx_k_exchange[] = "exchange";
static const char __pyx_k_interval[] = "interval";
static const char __pyx_k_leverage[] = "leverage";
static const char __pyx_k_logger_2[] = "__logger__";
static const char __pyx_k_myTrades[] = "myTrades";
static const char __pyx_k_operator[] = "operator";
static const char __pyx_k_platform[] = "platform";
static const char __pyx_k_products[] = "products";
static const char __pyx_k_qualname[] = "__qualname__";
static const char __pyx_k_raw_data[] = "raw_data";
static const char __pyx_k_requests[] = "requests";
static const char __pyx_k_response[] = "response";
static const char __pyx_k_reversed[] = "reversed";
static const char __pyx_k_set_name[] = "__set_name__";
static const char __pyx_k_start_ts[] = "start_ts";
static const char __pyx_k_strptime[] = "strptime";
static const char __pyx_k_tag_name[] = "tag_name";
static const char __pyx_k_withdraw[] = "withdraw";
static const char __pyx_k_A2_t_q_DE[] = "\200A\3602\000\t\020\210t\320\023'\240q\250\007\320/D\300E\310\021";
static const char __pyx_k_AF_t5_hhd[] = "\200A\360F\001\000\t\020\210t\2205\230\001\320\031)\250\025\250h\260h\270d\300!";
static const char __pyx_k_AGG_PRICE[] = "AGG_PRICE";
static const char __pyx_k_AJ_t5_F_q[] = "\200A\360J\001\000\t\020\210t\2205\230\001\230\033\240F\250%\250q";
static const char __pyx_k_AJ_t_q_fE[] = "\200A\360J\001\000\t\020\210t\320\023'\240q\250\010\260\016\270f\300E\310\021";
static const char __pyx_k_AR_t5_5_A[] = "\200A\360R\001\000\t\020\210t\2205\230\001\230\032\2405\250\010\260\010\270\004\270A";
static const char __pyx_k_A_t_0C6_a[] = "\200A\360\014\000\t\020\210t\320\023(\250\001\250\027\3200C\3006\310\025\310a";
static const char __pyx_k_A_t_1C6_a[] = "\200A\360\016\000\t\020\210t\320\023(\250\001\250\030\3201C\3006\310\025\310a";
static const char __pyx_k_A_t_3DF_q[] = "\200A\360\016\000\t\020\210t\320\023(\250\001\250\032\3203D\300F\310%\310q";
static const char __pyx_k_A_t_6_EQR[] = "\200A\360\016\000\t\020\210t\320\023(\250\001\250\027\260\013\2706\300\030\310\023\310E\320QR";
static const char __pyx_k_A_t_Q_gV5[] = "\200A\360\016\000\t\020\210t\320\023-\250Q\330\014\023\220;\230g\240V\2505\260\001";
static const char __pyx_k_A_t_Q_oV5[] = "\200A\360\016\000\t\020\210t\320\023-\250Q\330\014\026\220o\240V\2505\260\001";
static const char __pyx_k_A_t_Q_wfE[] = "\200A\360\016\000\t\020\210t\320\023-\250Q\330\014\026\320\026'\240w\250f\260E\270\021";
static const char __pyx_k_A_t_Qg5EU[] = "\200A\360\016\000\t\020\210t\320\023-\250Q\250g\3205E\300U\310!";
static const char __pyx_k_A_t_QgYe1[] = "\200A\360\016\000\t\020\210t\320\023-\250Q\250g\260Y\270e\3001";
static const char __pyx_k_A_t_QgYfE[] = "\200A\360\016\000\t\020\210t\320\023-\250Q\250g\260Y\270f\300E\310\021";
static const char __pyx_k_A_t_QgZuA[] = "\200A\360\014\000\t\020\210t\320\023-\250Q\250g\260Z\270u\300A";
static const char __pyx_k_A_t_QgZvU[] = "\200A\360\014\000\t\020\210t\320\023-\250Q\250g\260Z\270v\300U\310!";
static const char __pyx_k_A_t_QhivU[] = "\200A\360\016\000\t\020\210t\320\023-\250Q\250h\260i\270v\300U\310!";
static const char __pyx_k_A_t_q_gV5[] = "\200A\360\014\000\t\020\210t\320\023'\240q\330\014\024\320\024&\240g\250V\2605\270\001";
static const char __pyx_k_Ah_t6_6_a[] = "\200A\360h\003\000\t\020\210t\2206\230\021\230)\2406\250\025\250a";
static const char __pyx_k_Av_t5_XXT[] = "\200A\360v\001\000\t\020\210t\2205\230\001\230\037\250\005\250X\260X\270T\300\021";
static const char __pyx_k_SIDE_SELL[] = "SIDE_SELL";
static const char __pyx_k_STOP_LOSS[] = "STOP_LOSS";
static const char __pyx_k_aggTrades[] = "aggTrades";
static const char __pyx_k_allOrders[] = "allOrders";
static const char __pyx_k_enumerate[] = "enumerate";
static const char __pyx_k_error_msg[] = "error_msg";
static const char __pyx_k_exc_value[] = "exc_value";
static const char __pyx_k_getLogger[] = "getLogger";
static const char __pyx_k_get_order[] = "get_order";
static const char __pyx_k_hexdigest[] = "hexdigest";
static const char __pyx_k_isenabled[] = "isenabled";
static const char __pyx_k_listenKey[] = "listenKey";
static const char __pyx_k_metaclass[] = "__metaclass__";
static const char __pyx_k_null_args[] = "null_args";
static const char __pyx_k_order_oco[] = "order/oco";
static const char __pyx_k_signature[] = "signature";
static const char __pyx_k_startTime[] = "startTime";
static const char __pyx_k_start_str[] = "start_str";
static const char __pyx_k_temp_data[] = "temp_data";
static const char __pyx_k_timeframe[] = "timeframe";
static const char __pyx_k_timestamp[] = "timestamp";
static const char __pyx_k_transFrom[] = "transFrom";
static const char __pyx_k_urlencode[] = "urlencode";
static const char __pyx_k_version_2[] = "version";
static const char __pyx_k_A6_t_q_7_Q[] = "\200A\3606\000\t\020\210t\320\023'\240q\250\010\260\013\2707\300&\310\005\310Q";
static const char __pyx_k_AH_t5_xxt1[] = "\200A\360H\001\000\t\020\210t\2205\230\001\230\031\240%\240x\250x\260t\2701";
static const char __pyx_k_API_SECRET[] = "API_SECRET";
static const char __pyx_k_A_t5_5K5PQ[] = "\200A\360~\001\000\t\020\210t\2205\230\001\320\031)\250\030\260\024\3205K\3105\320PQ";
static const char __pyx_k_A_t5_U_a_2[] = "\200A\360\"\000\t\020\210t\2205\230\001\230\034\240U\250(\260(\270$\270a";
static const char __pyx_k_A_t_0EV5PQ[] = "\200A\360\016\000\t\020\210t\320\023(\250\001\250\027\3200E\300V\3105\320PQ";
static const char __pyx_k_A_t_1FfEQR[] = "\200A\360\016\000\t\020\210t\320\023(\250\001\250\030\3201F\300f\310E\320QR";
static const char __pyx_k_A_t_Q_L_vU[] = "\200A\360\016\000\t\020\210t\320\023-\250Q\330\014\024\220L\240\007\240v\250U\260!";
static const char __pyx_k_A_t_Q_N_uA[] = "\200A\360\016\000\t\020\210t\320\023-\250Q\330\014\024\220N\240'\250\026\250u\260A";
static const char __pyx_k_A_t_Q_iwfE[] = "\200A\360\016\000\t\020\210t\320\023-\250Q\330\014\026\220i\230w\240f\250E\260\021";
static const char __pyx_k_A_t_Qg5GuA[] = "\200A\360\016\000\t\020\210t\320\023-\250Q\250g\3205G\300u\310A";
static const char __pyx_k_A_t_Qg5H_Q[] = "\200A\360\014\000\t\020\210t\320\023-\250Q\250g\3205H\310\005\310Q";
static const char __pyx_k_A_t_Qg5I_a[] = "\200A\360\014\000\t\020\210t\320\023-\250Q\250g\3205I\310\025\310a";
static const char __pyx_k_A_t_Qg5J_q[] = "\200A\360\016\000\t\020\210t\320\023-\250Q\250g\3205J\310%\310q";
static const char __pyx_k_A_t_Qg_6_a[] = "\200A\360\016\000\t\020\210t\320\023-\250Q\250g\260^\3006\310\025\310a";
static const char __pyx_k_A_t_Qg_E_2[] = "\200A\360\016\000\t\020\210t\320\023-\250Q\250g\260_\300E\310\021";
static const char __pyx_k_A_t_q_A_uA[] = "\200A\360\016\000\t\020\210t\320\023'\240q\250\007\320/A\300\026\300u\310A";
static const char __pyx_k_A_t_q_C6_a[] = "\200A\360\014\000\t\020\210t\320\023'\240q\250\007\320/C\3006\310\025\310a";
static const char __pyx_k_A_t_q_SSYY[] = "\200A\360`\001\000\t\020\210t\320\023'\240q\250\007\320/S\320SY\320Y^\320^_";
static const char __pyx_k_A_t_q_uA_2[] = "\200A\360,\000\t\020\210t\320\023'\240q\250\007\250{\270'\300\026\300u\310A";
static const char __pyx_k_Ad_t_q_B_Q[] = "\200A\360d\003\000\t\020\210t\320\023'\240q\250\007\320/B\300&\310\005\310Q";
static const char __pyx_k_C2C_MINING[] = "C2C_MINING";
static const char __pyx_k_MINING_C2C[] = "MINING_C2C";
static const char __pyx_k_User_Agent[] = "User-Agent";
static const char __pyx_k_ValueError[] = "ValueError";
static const char __pyx_k_api_secret[] = "api_secret";
static const char __pyx_k_asset_dust[] = "asset/dust";
static const char __pyx_k_binance_us[] = "binance.us";
static const char __pyx_k_exceptions[] = "exceptions";
static const char __pyx_k_exchange_2[] = ", exchange: ";
static const char __pyx_k_get_klines[] = "get_klines";
static const char __pyx_k_get_ticker[] = "get_ticker";
static const char __pyx_k_itemgetter[] = "itemgetter";
static const char __pyx_k_marginType[] = "marginType";
static const char __pyx_k_openOrders[] = "openOrders";
static const char __pyx_k_order_test[] = "order/test";
static const char __pyx_k_serverTime[] = "serverTime";
static const char __pyx_k_update_msg[] = "update_msg";
static const char __pyx_k_userTrades[] = "userTrades";
static const char __pyx_k_user_agent[] = "user_agent";
static const char __pyx_k_A0_t_1GvURS[] = "\200A\3600\000\t\020\210t\320\023(\250\001\250\030\3201G\300v\310U\320RS";
static const char __pyx_k_A2_gQ_D_t_1[] = "\200A\3602\000\t\017\210g\220Q\330\014\024\220D\230\001\340\010\017\210t\220=\240\003\2401";
static const char __pyx_k_A8_gQ_D_t_1[] = "\200A\3608\000\t\017\210g\220Q\330\014\024\220D\230\001\340\010\017\210t\220=\240\003\2401";
static const char __pyx_k_AF_t_q_TTZZ[] = "\200A\360F\001\000\t\020\210t\320\023'\240q\250\007\320/T\320TZ\320Z_\320_`";
static const char __pyx_k_AJ_t5_e884q[] = "\200A\360J\001\000\t\020\210t\2205\230\001\230\035\240e\2508\2608\2704\270q";
static const char __pyx_k_AJ_t_q_C6_a[] = "\200A\360J\001\000\t\020\210t\320\023'\240q\250\007\320/C\3006\310\025\310a";
static const char __pyx_k_AX_t5_e884q[] = "\200A\360X\001\000\t\020\210t\2205\230\001\320\031.\250e\2608\2708\3004\300q";
static const char __pyx_k_A_t_0J_PUUV[] = "\200A\360\016\000\t\020\210t\320\023(\250\001\250\027\3200J\310&\320PU\320UV";
static const char __pyx_k_A_t_Q_hc_e1[] = "\200A\360\016\000\t\020\210t\320\023-\250Q\330\014\023\320\023&\240h\250c\260\027\270\006\270e\3001";
static const char __pyx_k_A_t_QgZuA_2[] = "\200A\360\016\000\t\020\210t\320\023-\250Q\250g\260Z\270u\300A";
static const char __pyx_k_A_t_q_0DF_q[] = "\200A\360\014\000\t\020\210t\320\023'\240q\250\010\3200D\300F\310%\310q";
static const char __pyx_k_A_t_q_0QQWW[] = "\200A\360>\000\t\020\210t\320\023'\240q\250\010\3200Q\320QW\320W\\\320\\]";
static const char __pyx_k_A_t_q_0TTZZ[] = "\200A\360.\000\t\020\210t\320\023'\240q\250\010\3200T\320TZ\320Z_\320_`";
static const char __pyx_k_A_t_q_EV5PQ[] = "\200A\360:\000\t\020\210t\320\023'\240q\250\007\320/E\300V\3105\320PQ";
static const char __pyx_k_A_t_q_FfEQR[] = "\200A\360\\\001\000\t\020\210t\320\023'\240q\250\007\320/F\300f\310E\320QR";
static const char __pyx_k_A_t_q_MWTZZ[] = "\200A\360\014\000\t\020\210t\320\023'\240q\250\007\320/M\310W\320TZ\320Z_\320_`";
static const char __pyx_k_A_t_q_NgU_a[] = "\200A\360\014\000\t\020\210t\320\023'\240q\250\007\320/N\310g\320U[\320[`\320`a";
static const char __pyx_k_A_t_q_gV5PQ[] = "\200A\360\\\001\000\t\020\210t\320\023'\240q\250\007\250\270g\300V\3105\320PQ";
static const char __pyx_k_A_t_q_wfEQR[] = "\200A\360\\\001\000\t\020\210t\320\023'\240q\250\007\320/?\270w\300f\310E\320QR";
static const char __pyx_k_Ad_t_q_UU_a[] = "\200A\360d\001\000\t\020\210t\320\023'\240q\250\007\320/U\320U[\320[`\320`a";
static const char __pyx_k_Ah_t_q_PPVV[] = "\200A\360h\001\000\t\020\210t\320\023'\240q\250\007\320/P\320PV\320V[\320[\\";
static const char __pyx_k_Ap_t_q_A_uA[] = "\200A\360p\001\000\t\020\210t\320\023'\240q\250\007\320/A\300\026\300u\310A";
static const char __pyx_k_FUTURES_URL[] = "FUTURES_URL";
static const char __pyx_k_LIMIT_MAKER[] = "LIMIT_MAKER";
static const char __pyx_k_MAIN_MARGIN[] = "MAIN_MARGIN";
static const char __pyx_k_MAIN_MINING[] = "MAIN_MINING";
static const char __pyx_k_MARGIN_MAIN[] = "MARGIN_MAIN";
static const char __pyx_k_MINING_MAIN[] = "MINING_MAIN";
static const char __pyx_k_TAKE_PROFIT[] = "TAKE_PROFIT";
static const char __pyx_k_WEBSITE_URL[] = "WEBSITE_URL";
static const char __pyx_k_batchOrders[] = "batchOrders";
static const char __pyx_k_binance_com[] = "binance.com";
static const char __pyx_k_compiled_on[] = "-compiled on ";
static const char __pyx_k_fundingRate[] = "fundingRate";
static const char __pyx_k_get_account[] = "get_account";
static const char __pyx_k_get_version[] = "get_version";
static const char __pyx_k_margin_loan[] = "margin/loan";
static const char __pyx_k_margin_pair[] = "margin/pair";
static const char __pyx_k_mro_entries[] = "__mro_entries__";
static const char __pyx_k_order_limit[] = "order_limit";
static const char __pyx_k_output_data[] = "output_data";
static const char __pyx_k_request_api[] = "_request_api";
static const char __pyx_k_status_code[] = "status_code";
static const char __pyx_k_t5_7_xxt1_A[] = "\320\004*\250!\360&\000\t\n\330\014\031\230\021\340\010\017\210t\2205\230\001\320\031+\2507\260%\260x\270x\300t\3101\330\031)\320)<\270A";
static const char __pyx_k_ticker_24hr[] = "ticker/24hr";
static const char __pyx_k_timeInForce[] = "timeInForce";
static const char __pyx_k_used_weight[] = "used_weight";
static const char __pyx_k_withdraw_id[] = "withdraw_id";
static const char __pyx_k_A0_t_q_I_PVV[] = "\200A\3600\000\t\020\210t\320\023'\240q\250\007\320/I\310\027\320PV\320V[\320[\\";
static const char __pyx_k_A2_t_q_0QQWW[] = "\200A\3602\000\t\020\210t\320\023'\240q\250\010\3200Q\320QW\320W\\\320\\]";
static const char __pyx_k_A8_t_q_0PPVV[] = "\200A\3608\000\t\020\210t\320\023'\240q\250\010\3200P\320PV\320V[\320[\\";
static const char __pyx_k_AF_t_q_wfEQR[] = "\200A\360F\001\000\t\020\210t\320\023'\240q\250\010\260\017\270w\300f\310E\320QR";
static const char __pyx_k_AGG_QUANTITY[] = "AGG_QUANTITY";
static const char __pyx_k_AH_t_q_K7RXX[] = "\200A\360H\001\000\t\020\210t\320\023'\240q\250\007\320/K\3107\320RX\320X]\320]^";
static const char __pyx_k_AL_gQ_D_t_Cq[] = "\200A\360L\001\000\t\017\210g\220Q\330\014\024\220D\230\001\340\010\017\210t\320\023$\240C\240q";
static const char __pyx_k_AN_gQ_D_t_Cq[] = "\200A\360N\001\000\t\017\210g\220Q\330\014\024\220D\230\001\340\010\017\210t\320\023$\240C\240q";
static const char __pyx_k_AV_t_q_H_eST[] = "\200A\360V\002\000\t\020\210t\320\023'\240q\250\007\320/H\310\006\310e\320ST";
static const char __pyx_k_A_t_0_hcQVVW[] = "\200A\360\016\000\t\020\210t\320\023(\250\001\250\027\3200@\300\006\300h\310c\320QV\320VW";
static const char __pyx_k_A_t_2_7_NeST[] = "\200A\360\016\000\t\020\210t\320\0232\260!\2607\320:N\310e\320ST";
static const char __pyx_k_A_t_Qg5EV5PQ[] = "\200A\360\016\000\t\020\210t\320\023-\250Q\250g\3205E\300V\3105\320PQ";
static const char __pyx_k_A_t_Qg5I_a_2[] = "\200A\360\016\000\t\020\210t\320\023-\250Q\250g\3205I\310\025\310a";
static const char __pyx_k_A_t_Qg_6_a_2[] = "\200A\360\014\000\t\020\210t\320\023-\250Q\250g\260^\3006\310\025\310a";
static const char __pyx_k_A_t_q_0J_QWW[] = "\200A\360\014\000\t\020\210t\320\023'\240q\250\010\3200J\310'\320QW\320W\\\320\\]";
static const char __pyx_k_A_t_q_0K7RXX[] = "\200A\360\014\000\t\020\210t\320\023'\240q\250\010\3200K\3107\320RX\320X]\320]^";
static const char __pyx_k_A_t_q_H_vUZZ[] = "\200A\360\014\000\t\020\210t\320\023'\240q\250\007\320/H\310\007\310v\320UZ\320Z[";
static const char __pyx_k_A_t_q_J_PUUV[] = "\200A\360^\003\000\t\020\210t\320\023'\240q\250\007\320/J\310&\320PU\320UV";
static const char __pyx_k_A_t_q_NfTYYZ[] = "\200A\360`\001\000\t\020\210t\320\023'\240q\250\007\320/N\310f\320TY\320YZ";
static const char __pyx_k_A_t_q_SSYY_2[] = "\200A\360<\000\t\020\210t\320\023'\240q\250\007\320/S\320SY\320Y^\320^_";
static const char __pyx_k_A_t_q_VV_aab[] = "\200A\360`\001\000\t\020\210t\320\023'\240q\250\007\320/V\320V\\\320\\a\320ab";
static const char __pyx_k_A_t_q_WW_bbc[] = "\200A\360`\001\000\t\020\210t\320\023'\240q\250\007\320/W\320W]\320]b\320bc";
static const char __pyx_k_Ah_t_q_wfEQR[] = "\200A\360h\001\000\t\020\210t\320\023'\240q\250\007\320/?\270w\300f\310E\320QR";
static const char __pyx_k_Aj_t_q_A_eST[] = "\200A\360j\001\000\t\020\210t\320\023'\240q\250\007\320/A\300\027\310\006\310e\320ST";
static const char __pyx_k_Al_t_q_I_uTU[] = "\200A\360l\001\000\t\020\210t\320\023'\240q\250\007\320/I\310\026\310u\320TU";
static const char __pyx_k_At_t_q_B_uTU[] = "\200A\360t\001\000\t\020\210t\320\023'\240q\250\007\320/B\300'\310\026\310u\320TU";
static const char __pyx_k_C2C_UMFUTURE[] = "C2C_UMFUTURE";
static const char __pyx_k_FIAT_TO_SPOT[] = "FIAT_TO_SPOT";
static const char __pyx_k_Optional_str[] = "Optional[str]";
static const char __pyx_k_SPOT_TO_FIAT[] = "SPOT_TO_FIAT";
static const char __pyx_k_UMFUTURE_C2C[] = "UMFUTURE_C2C";
static const char __pyx_k_X_MBX_APIKEY[] = "X-MBX-APIKEY";
static const char __pyx_k_a_t81_gU_a_q[] = "\320\004&\240a\360&\000\t\n\330\014\031\230\021\340\010\017\210t\2208\2301\320\034.\250g\260U\270(\300(\310$\310a\330\034,\320,?\270q";
static const char __pyx_k_cancel_order[] = "cancel_order";
static const char __pyx_k_create_order[] = "create_order";
static const char __pyx_k_exchangeInfo[] = "exchangeInfo";
static const char __pyx_k_for_exchange[] = " for exchange ";
static const char __pyx_k_force_params[] = "force_params";
static const char __pyx_k_futures_ping[] = "futures_ping";
static const char __pyx_k_futures_time[] = "futures_time";
static const char __pyx_k_get_dust_log[] = "get_dust_log";
static const char __pyx_k_get_products[] = "get_products";
static const char __pyx_k_init_session[] = "_init_session";
static const char __pyx_k_initializing[] = "_initializing";
static const char __pyx_k_is_coroutine[] = "_is_coroutine";
static const char __pyx_k_margin_asset[] = "margin/asset";
static const char __pyx_k_margin_order[] = "margin/order";
static const char __pyx_k_margin_repay[] = "margin/repay";
static const char __pyx_k_openInterest[] = "openInterest";
static const char __pyx_k_order_market[] = "order_market";
static const char __pyx_k_order_params[] = "_order_params";
static const char __pyx_k_ordered_data[] = "ordered_data";
static const char __pyx_k_positionRisk[] = "positionRisk";
static const char __pyx_k_premiumIndex[] = "premiumIndex";
static const char __pyx_k_query_string[] = "query_string";
static const char __pyx_k_self_API_URL[] = "\r\nself.API_URL: ";
static const char __pyx_k_staticmethod[] = "staticmethod";
static const char __pyx_k_stop_manager[] = "stop_manager";
static const char __pyx_k_stream_close[] = "stream_close";
static const char __pyx_k_ticker_price[] = "ticker/price";
static const char __pyx_k_urllib_parse[] = "urllib.parse";
static const char __pyx_k_withdrawList[] = "withdrawList";
static const char __pyx_k_00DA_t_xy_SST[] = "\320\004\032\320\0320\3200D\300A\330\010\017\210t\220=\240\001\240\030\250\026\250x\260y\320@S\320ST";
static const char __pyx_k_1_gQ_D_t_q_O1[] = "\320\004+\2501\360>\000\t\017\210g\220Q\330\014\024\220D\230\001\340\010\017\210t\220<\230q\240\014\250O\2701";
static const char __pyx_k_31_t_2T_82T_1[] = "\320\0043\2601\330\010\017\210t\320\023#\2402\240T\250\022\2508\2602\260T\270\022\2701";
static const char __pyx_k_A4_t_q_0OvUZZ[] = "\200A\3604\000\t\020\210t\320\023'\240q\250\010\3200O\310v\320UZ\320Z[";
static const char __pyx_k_A4_t_q_J_PUUV[] = "\200A\3604\000\t\020\210t\320\023'\240q\250\007\320/J\310&\320PU\320UV";
static const char __pyx_k_A6_t_q_0J_QWW[] = "\200A\3606\000\t\020\210t\320\023'\240q\250\010\3200J\310'\320QW\320W\\\320\\]";
static const char __pyx_k_A8_t_q_MVSXXY[] = "\200A\3608\000\t\020\210t\320\023'\240q\250\007\320/M\310V\320SX\320XY";
static const char __pyx_k_AB_t_q_MVSXXY[] = "\200A\360B\002\000\t\020\210t\320\023'\240q\250\007\320/M\310V\320SX\320XY";
static const char __pyx_k_AH_t_q_J_PUUV[] = "\200A\360H\001\000\t\020\210t\320\023'\240q\250\007\320/J\310&\320PU\320UV";
static const char __pyx_k_AJ_t_q_0_vURS[] = "\200A\360J\001\000\t\020\210t\320\023'\240q\250\010\3200@\300\007\300v\310U\320RS";
static const char __pyx_k_AZ_t_q_2B_uTU[] = "\200A\360Z\001\000\t\020\210t\320\023'\240q\250\n\3202B\300'\310\026\310u\320TU";
static const char __pyx_k_A_t_Qg5J_PUUV[] = "\200A\360\016\000\t\020\210t\320\023-\250Q\250g\3205J\310&\320PU\320UV";
static const char __pyx_k_A_t_Qh6K6QVVW[] = "\200A\360\014\000\t\020\210t\320\023-\250Q\250h\3206K\3106\320QV\320VW";
static const char __pyx_k_A_t_q_0H_vUZZ[] = "\200A\360\014\000\t\020\210t\320\023'\240q\250\010\3200H\310\007\310v\320UZ\320Z[";
static const char __pyx_k_A_t_q_0LFRWWX[] = "\200A\360\034\000\t\020\210t\320\023'\240q\250\010\3200L\310F\320RW\320WX";
static const char __pyx_k_A_t_q_0MVSXXY[] = "\200A\360\034\000\t\020\210t\320\023'\240q\250\010\3200M\310V\320SX\320XY";
static const char __pyx_k_A_t_q_0XX_ccd[] = "\200A\360<\000\t\020\210t\320\023'\240q\250\010\3200X\320X^\320^c\320cd";
static const char __pyx_k_A_t_q_DG6QVVW[] = "\200A\360`\001\000\t\020\210t\320\023'\240q\250\007\320/D\300G\3106\320QV\320VW";
static const char __pyx_k_A_t_q_GwfTYYZ[] = "\200A\360:\000\t\020\210t\320\023'\240q\250\007\320/G\300w\310f\320TY\320YZ";
static const char __pyx_k_A_t_q_OwV_aab[] = "\200A\360\014\000\t\020\210t\320\023'\240q\250\007\320/O\310w\320V\\\320\\a\320ab";
static const char __pyx_k_Al_t_q_K6QVVW[] = "\200A\360l\001\000\t\020\210t\320\023'\240q\250\007\320/K\3106\320QV\320VW";
static const char __pyx_k_An_t_q_0_vURS[] = "\200A\360n\003\000\t\020\210t\320\023'\240q\250\010\3200@\300\007\300v\310U\320RS";
static const char __pyx_k_Ap_t_q_LFRWWX[] = "\200A\360p\001\000\t\020\210t\320\023'\240q\250\007\320/L\310F\320RW\320WX";
static const char __pyx_k_B_gQ_D_t_q_O1[] = "\320\004*\250!\360B\001\000\t\017\210g\220Q\330\014\024\220D\230\001\340\010\017\210t\220<\230q\240\014\250O\2701";
static const char __pyx_k_CMFUTURE_MAIN[] = "CMFUTURE_MAIN";
static const char __pyx_k_MAIN_CMFUTURE[] = "MAIN_CMFUTURE";
static const char __pyx_k_MAIN_UMFUTURE[] = "MAIN_UMFUTURE";
static const char __pyx_k_Optional_bool[] = "Optional[bool]";
static const char __pyx_k_Optional_dict[] = "Optional[dict]";
static const char __pyx_k_UMFUTURE_MAIN[] = "UMFUTURE_MAIN";
static const char __pyx_k_aB_gQ_D_1_t_1[] = "\320\004&\240a\360B\001\000\t\017\210g\220Q\330\014\024\220D\230\001\330\014\033\2301\340\010\017\210t\220=\240\003\2401";
static const char __pyx_k_a_t_weST_99LA[] = "\320\004.\250a\360&\000\t\n\330\014\031\230\021\340\010\017\210t\320\023(\250\001\250\032\260=\300\007\300w\310e\320ST\330)9\3209L\310A";
static const char __pyx_k_allOpenOrders[] = "allOpenOrders";
static const char __pyx_k_class_getitem[] = "__class_getitem__";
static const char __pyx_k_get_avg_price[] = "get_avg_price";
static const char __pyx_k_get_my_trades[] = "get_my_trades";
static const char __pyx_k_get_trade_fee[] = "get_trade_fee";
static const char __pyx_k_has_signature[] = "has_signature";
static const char __pyx_k_order_oco_buy[] = "order_oco_buy";
static const char __pyx_k_system_status[] = "system/status";
static const char __pyx_k_transfer_dust[] = "transfer_dust";
static const char __pyx_k_trbinance_com[] = "trbinance.com";
static const char __pyx_k_2_t_WG5PQ_99LA[] = "\320\0042\260!\360&\000\t\n\330\014\031\230\021\340\010\017\210t\320\023(\250\001\250\027\260\r\270W\300G\3105\320PQ\330)9\3209L\310A";
static const char __pyx_k_A2_t_q_0MVSXXY[] = "\200A\3602\000\t\020\210t\320\023'\240q\250\010\3200M\310V\320SX\320XY";
static const char __pyx_k_A2_t_q_0NfTYYZ[] = "\200A\3602\000\t\020\210t\320\023'\240q\250\010\3200N\310f\320TY\320YZ";
static const char __pyx_k_AGG_BEST_MATCH[] = "AGG_BEST_MATCH";
static const char __pyx_k_AN_t_q_FgVSXXY[] = "\200A\360N\002\000\t\020\210t\320\023'\240q\250\007\320/F\300g\310V\320SX\320XY";
static const char __pyx_k_AX_t_q_C7_PUUV[] = "\200A\360X\001\000\t\020\210t\320\023'\240q\250\007\320/C\3007\310&\320PU\320UV";
static const char __pyx_k_A_t_q_2FgVSXXY[] = "\200A\360^\002\000\t\020\210t\320\023'\240q\250\n\3202F\300g\310V\320SX\320XY";
static const char __pyx_k_A_t_q_EV5PXX_a[] = "\200A\360^\001\000\t\020\210t\320\023'\240q\250\007\320/E\300V\3105\320PX\320X`\320`a";
static const char __pyx_k_A_t_q_PPWW_bbc[] = "\200A\360\014\000\t\020\210t\320\023'\240q\250\007\320/P\320PW\320W]\320]b\320bc";
static const char __pyx_k_A_t_q_QQXX_ccd[] = "\200A\360\014\000\t\020\210t\320\023'\240q\250\007\320/Q\320QX\320X^\320^c\320cd";
static const char __pyx_k_A_t_q_TT_aaffg[] = "\200A\360\014\000\t\020\210t\320\023'\240q\250\007\320/T\320T[\320[a\320af\320fg";
static const char __pyx_k_AttributeError[] = "AttributeError";
static const char __pyx_k_Av_t_q_C7_PUUV[] = "\200A\360v\001\000\t\020\210t\320\023'\240q\250\007\320/C\3007\310&\320PU\320UV";
static const char __pyx_k_FIAT_TO_MINING[] = "FIAT_TO_MINING";
static const char __pyx_k_MARGIN_API_URL[] = "MARGIN_API_URL";
static const char __pyx_k_MINING_TO_FIAT[] = "MINING_TO_FIAT";
static const char __pyx_k_MINING_TO_SPOT[] = "MINING_TO_SPOT";
static const char __pyx_k_Optional_float[] = "Optional[float]";
static const char __pyx_k_PENDING_CANCEL[] = "PENDING_CANCEL";
static const char __pyx_k_SPOT_TO_MINING[] = "SPOT_TO_MINING";
static const char __pyx_k_account_status[] = "account/status";
static const char __pyx_k_allForceOrders[] = "allForceOrders";
static const char __pyx_k_asset_dribblet[] = "asset/dribblet";
static const char __pyx_k_asset_tradeFee[] = "asset/tradeFee";
static const char __pyx_k_asset_transfer[] = "asset/transfer";
static const char __pyx_k_cached_timeout[] = "cached_timeout";
static const char __pyx_k_commissionRate[] = "commissionRate";
static const char __pyx_k_create_api_uri[] = "_create_api_uri";
static const char __pyx_k_first_valid_ts[] = "first_valid_ts";
static const char __pyx_k_futures_klines[] = "futures_klines";
static const char __pyx_k_futures_ticker[] = "futures_ticker";
static const char __pyx_k_get_all_orders[] = "get_all_orders";
static const char __pyx_k_get_order_book[] = "get_order_book";
static const char __pyx_k_get_user_agent[] = "get_user_agent";
static const char __pyx_k_margin_account[] = "margin/account";
static const char __pyx_k_order_oco_sell[] = "order_oco_sell";
static const char __pyx_k_positionMargin[] = "positionMargin";
static const char __pyx_k_python_version[] = "python_version";
static const char __pyx_k_userDataStream[] = "userDataStream";
static const char __pyx_k_warn_on_update[] = "warn_on_update";
static const char __pyx_k_1_d_6_t9AXU_8HH[] = "\320\0041\260\036\270{\310!\330\010\016\210d\320\022*\250!\2506\260\030\270\021\330\010\017\210t\2209\230A\230X\240U\250(\260&\3208H\320H[\320[\\";
static const char __pyx_k_AGG_BUYER_MAKES[] = "AGG_BUYER_MAKES";
static const char __pyx_k_AV_t_q_0DG6QVVW[] = "\200A\360V\003\000\t\020\210t\320\023'\240q\250\010\3200D\300G\3106\320QV\320VW";
static const char __pyx_k_AV_t_q_2GwfTYYZ[] = "\200A\360V\003\000\t\020\210t\320\023'\240q\250\n\3202G\300w\310f\320TY\320YZ";
static const char __pyx_k_A_t_q_GwfTYYZ_2[] = "\200A\360.\000\t\020\210t\320\023'\240q\250\007\320/G\300w\310f\320TY\320YZ";
static const char __pyx_k_A_t_q_GwfTYYZ_3[] = "\200A\360`\001\000\t\020\210t\320\023'\240q\250\007\320/G\300w\310f\320TY\320YZ";
static const char __pyx_k_ISOLATED_MARGIN[] = "ISOLATED_MARGIN";
static const char __pyx_k_MARGIN_UMFUTURE[] = "MARGIN_UMFUTURE";
static const char __pyx_k_MINING_UMFUTURE[] = "MINING_UMFUTURE";
static const char __pyx_k_New_instance_of[] = "New instance of ";
static const char __pyx_k_STOP_LOSS_LIMIT[] = "STOP_LOSS_LIMIT";
static const char __pyx_k_UMFUTURE_MARGIN[] = "UMFUTURE_MARGIN";
static const char __pyx_k_UnknownExchange[] = "UnknownExchange";
static const char __pyx_k_accountSnapshot[] = "accountSnapshot";
static const char __pyx_k_error_traceback[] = "error_traceback";
static const char __pyx_k_futures_account[] = "futures_account";
static const char __pyx_k_get_all_tickers[] = "get_all_tickers";
static const char __pyx_k_get_open_orders[] = "get_open_orders";
static const char __pyx_k_get_server_time[] = "get_server_time";
static const char __pyx_k_get_symbol_info[] = "get_symbol_info";
static const char __pyx_k_get_used_weight[] = "get_used_weight";
static const char __pyx_k_handle_response[] = "_handle_response";
static const char __pyx_k_leverageBracket[] = "leverageBracket";
static const char __pyx_k_margin_myTrades[] = "margin/myTrades";
static const char __pyx_k_margin_transfer[] = "margin/transfer";
static const char __pyx_k_markPriceKlines[] = "markPriceKlines";
static const char __pyx_k_order_limit_buy[] = "order_limit_buy";
static const char __pyx_k_request_website[] = "_request_website";
static const char __pyx_k_requests_params[] = "requests_params";
static const char __pyx_k_socks_proxy_uri[] = "socks_proxy_uri";
static const char __pyx_k_throw_exception[] = "throw_exception";
static const char __pyx_k_1_t_q_A_uTU_88K1[] = "\320\0041\260\021\360&\000\t\n\330\014\031\230\021\340\010\017\210t\320\023'\240q\250\007\320/A\300\027\310\007\310u\320TU\330(8\3208K\3101";
static const char __pyx_k_7q_t_Qg_PUUV_QQR[] = "\320\0047\260q\360&\000\t\n\330\014\031\230\021\340\010\017\210t\320\023-\250Q\250g\260]\300'\310\027\320PU\320UV\330.>\320>Q\320QR";
static const char __pyx_k_9_D_A_t9Bd_Bb_Ba[] = "\320\004$\320$9\270\021\330\010\014\210D\320\020(\250\014\260A\330\010\017\210t\2209\230B\230d\240\"\240B\240b\250\004\250B\250a";
static const char __pyx_k_FUTURES_COIN_URL[] = "FUTURES_COIN_URL";
static const char __pyx_k_FUTURES_DATA_URL[] = "FUTURES_DATA_URL";
static const char __pyx_k_ORDER_STATUS_NEW[] = "ORDER_STATUS_NEW";
static const char __pyx_k_ORDER_TYPE_LIMIT[] = "ORDER_TYPE_LIMIT";
static const char __pyx_k_PARTIALLY_FILLED[] = "PARTIALLY_FILLED";
static const char __pyx_k_SYMBOL_TYPE_SPOT[] = "SYMBOL_TYPE_SPOT";
static const char __pyx_k_Unknown_exchange[] = "Unknown exchange '";
static const char __pyx_k_application_json[] = "application/json";
static const char __pyx_k_continuousKlines[] = "continuousKlines";
static const char __pyx_k_create_oco_order[] = "create_oco_order";
static const char __pyx_k_disable_colorama[] = "disable_colorama";
static const char __pyx_k_futures_transfer[] = "futures/transfer";
static const char __pyx_k_get_margin_asset[] = "get_margin_asset";
static const char __pyx_k_get_margin_order[] = "get_margin_order";
static const char __pyx_k_historicalTrades[] = "historicalTrades";
static const char __pyx_k_indexPriceKlines[] = "indexPriceKlines";
static const char __pyx_k_margin_allOrders[] = "margin/allOrders";
static const char __pyx_k_margin_orderList[] = "margin/orderList";
static const char __pyx_k_margin_order_oco[] = "margin/order/oco";
static const char __pyx_k_openInterestHist[] = "openInterestHist";
static const char __pyx_k_order_limit_sell[] = "order_limit_sell";
static const char __pyx_k_order_market_buy[] = "order_market_buy";
static const char __pyx_k_save_used_weight[] = "_save_used_weight";
static const char __pyx_k_self_FUTURES_URL[] = "\r\nself.FUTURES_URL: ";
static const char __pyx_k_self_WEBSITE_URL[] = "\r\nself.WEBSITE_URL: ";
static const char __pyx_k_stream_keepalive[] = "stream_keepalive";
static const char __pyx_k_sub_account_list[] = "sub-account/list";
static const char __pyx_k_timestamp_offset[] = "timestamp_offset";
static const char __pyx_k_transfer_history[] = "transfer_history";
static const char __pyx_k_6nA_d_q_t9AXU_8HH[] = "\320\0046\260n\300A\330\010\016\210d\320\022/\250q\260\001\340\010\017\210t\2209\230A\230X\240U\250(\260&\3208H\320H[\320[\\";
static const char __pyx_k_AGG_LAST_TRADE_ID[] = "AGG_LAST_TRADE_ID";
static const char __pyx_k_A_Kq_1_Q_a_A_uARq[] = "\200A\360\030\000\t\021\220\004\220K\230q\330\014\023\2201\330\014\025\220Q\330\014\022\220!\330\014\026\220a\330\014\024\220A\340\010\017\210u\220A\220R\220q\230\001";
static const char __pyx_k_A_xwb_c_oQ_0_1D_q[] = "\200A\330\010\022\220(\230(\240!\330\010\017\210x\220w\230b\240\n\250!\330 .\250c\260\021\260$\260o\300Q\330 0\260\003\2601\260D\270\001\330\010\017\210q";
static const char __pyx_k_ORDER_TYPE_MARKET[] = "ORDER_TYPE_MARKET";
static const char __pyx_k_TAKE_PROFIT_LIMIT[] = "TAKE_PROFIT_LIMIT";
static const char __pyx_k_TIME_IN_FORCE_FOK[] = "TIME_IN_FORCE_FOK";
static const char __pyx_k_TIME_IN_FORCE_GTC[] = "TIME_IN_FORCE_GTC";
static const char __pyx_k_TIME_IN_FORCE_IOC[] = "TIME_IN_FORCE_IOC";
static const char __pyx_k_X_MBX_USED_WEIGHT[] = "X-MBX-USED-WEIGHT";
static const char __pyx_k_a_d_b_Y_H_M_S_GMT[] = "%a, %d %b %Y %H:%M:%S GMT";
static const char __pyx_k_asset_assetDetail[] = "asset/assetDetail";
static const char __pyx_k_create_test_order[] = "create_test_order";
static const char __pyx_k_futures_coin_ping[] = "futures_coin_ping";
static const char __pyx_k_futures_coin_time[] = "futures_coin_time";
static const char __pyx_k_futures_get_order[] = "futures_get_order";
static const char __pyx_k_get_asset_balance[] = "get_asset_balance";
static const char __pyx_k_get_asset_details[] = "get_asset_details";
static const char __pyx_k_get_exchange_info[] = "get_exchange_info";
static const char __pyx_k_get_margin_symbol[] = "get_margin_symbol";
static const char __pyx_k_get_margin_trades[] = "get_margin_trades";
static const char __pyx_k_get_recent_trades[] = "get_recent_trades";
static const char __pyx_k_get_symbol_ticker[] = "get_symbol_ticker";
static const char __pyx_k_get_system_status[] = "get_system_status";
static const char __pyx_k_https_www_binance[] = "https://www.binance.{}";
static const char __pyx_k_installed_version[] = "installed_version";
static const char __pyx_k_margin_openOrders[] = "margin/openOrders";
static const char __pyx_k_margin_priceIndex[] = "margin/priceIndex";
static const char __pyx_k_order_market_sell[] = "order_market_sell";
static const char __pyx_k_positionSide_dual[] = "positionSide/dual";
static const char __pyx_k_repay_margin_loan[] = "repay_margin_loan";
static const char __pyx_k_requests_params_2[] = "_requests_params";
static const char __pyx_k_socks5_proxy_pass[] = "socks5_proxy_pass";
static const char __pyx_k_socks5_proxy_port[] = "socks5_proxy_port";
static const char __pyx_k_socks5_proxy_user[] = "socks5_proxy_user";
static const char __pyx_k_ticker_bookTicker[] = "ticker/bookTicker";
static const char __pyx_k_0_8_d_t9AXU_2BBUUV[] = "\320\0040\260\001\330$8\270\001\330\010\016\210d\320\022)\250\021\250&\260\001\340\010\017\210t\2209\230A\230X\240U\250(\3202B\320BU\320UV";
static const char __pyx_k_31_t_Qj_WGSXXY_QQR[] = "\320\0043\2601\360&\000\t\n\330\014\031\230\021\340\010\017\210t\320\023-\250Q\250j\270\r\300W\310G\320SX\320XY\330.>\320>Q\320QR";
static const char __pyx_k_A8_az_t_q_0C7_PUUV[] = "\200A\3608\000\t\017\210a\210z\230\021\330\010\017\210t\320\023'\240q\250\010\3200C\3007\310&\320PU\320UV";
static const char __pyx_k_AGG_FIRST_TRADE_ID[] = "AGG_FIRST_TRADE_ID";
static const char __pyx_k_A_Rt4xs_4_1HTccd_q[] = "\200A\360\014\000\t\026\220R\220t\2304\230x\240s\250!\2504\250|\270=\310\003\3101\310H\320Tc\320cd\330\010\017\210q";
static const char __pyx_k_A_fCq_M_1_1B_9_nTU[] = "\200A\330\010\016\210f\220C\220q\330\010\014\210M\230\021\330\010\013\2101\330\014\022\220)\2301\230B\320\0369\270\035\300n\320TU";
static const char __pyx_k_A_t_Qg5GxsRYY__dde[] = "\200A\360\014\000\t\020\210t\320\023-\250Q\250g\3205G\300x\310s\320RY\320Y_\320_d\320de";
static const char __pyx_k_A_y_81G1_a_AQ_t_e1[] = "\200A\360\014\000\t\030\220y\240\001\240\021\330\010\027\220|\2408\2501\250G\2601\330\010\016\210a\320\017 \240\014\250A\250Q\330\010\017\210t\320\023(\250\001\250\030\260\037\300\006\300e\3101";
static const char __pyx_k_B_a_t_q_J_QXX_88K1[] = "\320\004B\300!\360*\000\t\n\330\014\026\220a\330\014\031\230\021\340\010\017\210t\320\023'\240q\250\007\320/J\310'\320QX\320X]\320]^\330(8\3208K\3101";
static const char __pyx_k_Invalid_Response_s[] = "Invalid Response: %s";
static const char __pyx_k_MARGIN_API_VERSION[] = "MARGIN_API_VERSION";
static const char __pyx_k_PUBLIC_API_VERSION[] = "PUBLIC_API_VERSION";
static const char __pyx_k_asyncio_coroutines[] = "asyncio.coroutines";
static const char __pyx_k_binance_com_margin[] = "binance.com-margin";
static const char __pyx_k_cline_in_traceback[] = "cline_in_traceback";
static const char __pyx_k_countdownCancelAll[] = "countdownCancelAll";
static const char __pyx_k_create_margin_loan[] = "create_margin_loan";
static const char __pyx_k_create_website_uri[] = "_create_website_uri";
static const char __pyx_k_futures_mark_price[] = "futures_mark_price";
static const char __pyx_k_futures_order_book[] = "futures_order_book";
static const char __pyx_k_generate_signature[] = "_generate_signature";
static const char __pyx_k_get_account_status[] = "get_account_status";
static const char __pyx_k_get_all_coins_info[] = "get_all_coins_info";
static const char __pyx_k_get_latest_version[] = "get_latest_version";
static const char __pyx_k_get_margin_account[] = "get_margin_account";
static const char __pyx_k_is_update_availabe[] = "is_update_availabe";
static const char __pyx_k_request_margin_api[] = "_request_margin_api";
static const char __pyx_k_sub_account_assets[] = "sub-account/assets";
static const char __pyx_k_sub_account_status[] = "sub-account/status";
static const char __pyx_k_universal_transfer[] = "universal_transfer";
static const char __pyx_k_1_d_aq_t9AXU_2BBUUV[] = "\320\004-\250^\2701\330\010\016\210d\320\022&\240a\240q\340\010\017\210t\2209\230A\230X\240U\250(\3202B\320BU\320UV";
static const char __pyx_k_AlreadyStoppedError[] = "AlreadyStoppedError";
static const char __pyx_k_BinanceAPIException[] = "BinanceAPIException";
static const char __pyx_k_COIN_FUTURE_TO_SPOT[] = "COIN_FUTURE_TO_SPOT";
static const char __pyx_k_FIAT_TO_USDT_FUTURE[] = "FIAT_TO_USDT_FUTURE";
static const char __pyx_k_FUTURES_API_VERSION[] = "FUTURES_API_VERSION";
static const char __pyx_k_Initiating_colorama[] = "Initiating `colorama_";
static const char __pyx_k_KLINE_INTERVAL_1DAY[] = "KLINE_INTERVAL_1DAY";
static const char __pyx_k_KLINE_INTERVAL_3DAY[] = "KLINE_INTERVAL_3DAY";
static const char __pyx_k_ORDER_RESP_TYPE_ACK[] = "ORDER_RESP_TYPE_ACK";
static const char __pyx_k_ORDER_STATUS_FILLED[] = "ORDER_STATUS_FILLED";
static const char __pyx_k_PRIVATE_API_VERSION[] = "PRIVATE_API_VERSION";
static const char __pyx_k_Q_t_q_2DG7RWWX_88K1[] = "\320\004-\250Q\360&\000\t\n\330\014\031\230\021\340\010\017\210t\320\023'\240q\250\n\3202D\300G\3107\320RW\320WX\330(8\3208K\3101";
static const char __pyx_k_SPOT_TO_COIN_FUTURE[] = "SPOT_TO_COIN_FUTURE";
static const char __pyx_k_SPOT_TO_USDT_FUTURE[] = "SPOT_TO_USDT_FUTURE";
static const char __pyx_k_USDT_FUTURE_TO_FIAT[] = "USDT_FUTURE_TO_FIAT";
static const char __pyx_k_USDT_FUTURE_TO_SPOT[] = "USDT_FUTURE_TO_SPOT";
static const char __pyx_k_a_a_t_q_2MWT_a_88K1[] = "\320\004>\270a\360*\000\t\n\330\014\026\220a\330\014\031\230\021\340\010\017\210t\320\023'\240q\250\n\3202M\310W\320T[\320[`\320`a\330(8\3208K\3101";
static const char __pyx_k_asset_assetDividend[] = "asset/assetDividend";
static const char __pyx_k_binance_com_futures[] = "binance.com-futures";
static const char __pyx_k_binance_com_testnet[] = "binance.com-testnet";
static const char __pyx_k_cancel_margin_order[] = "cancel_margin_order";
static const char __pyx_k_create_margin_order[] = "create_margin_order";
static const char __pyx_k_futures_coin_klines[] = "futures_coin_klines";
static const char __pyx_k_futures_coin_ticker[] = "futures_coin_ticker";
static const char __pyx_k_get_deposit_address[] = "get_deposit_address";
static const char __pyx_k_get_deposit_history[] = "get_deposit_history";
static const char __pyx_k_get_lending_account[] = "get_lending_account";
static const char __pyx_k_get_max_margin_loan[] = "get_max_margin_loan";
static const char __pyx_k_latest_release_info[] = "latest_release_info";
static const char __pyx_k_margin_allOrderList[] = "margin/allOrderList";
static const char __pyx_k_margin_stream_close[] = "margin_stream_close";
static const char __pyx_k_request_futures_api[] = "_request_futures_api";
static const char __pyx_k_self_MARGIN_API_URL[] = "\r\nself.MARGIN_API_URL: ";
static const char __pyx_k_socks5_proxy_server[] = "socks5_proxy_server";
static const char __pyx_k_ticker_openInterest[] = "ticker/openInterest";
static const char __pyx_k_A_a_a_a_A_t_q_0LGSYY[] = "\200A\360>\000\t\017\210a\210\230a\330\010\016\210a\210}\230A\330\010\017\210t\320\023'\240q\250\010\3200L\310G\320SY\320Y^\320^_";
static const char __pyx_k_FUTURES_API_VERSION2[] = "FUTURES_API_VERSION2";
static const char __pyx_k_KLINE_INTERVAL_1HOUR[] = "KLINE_INTERVAL_1HOUR";
static const char __pyx_k_KLINE_INTERVAL_1WEEK[] = "KLINE_INTERVAL_1WEEK";
static const char __pyx_k_KLINE_INTERVAL_2HOUR[] = "KLINE_INTERVAL_2HOUR";
static const char __pyx_k_KLINE_INTERVAL_4HOUR[] = "KLINE_INTERVAL_4HOUR";
static const char __pyx_k_KLINE_INTERVAL_6HOUR[] = "KLINE_INTERVAL_6HOUR";
static const char __pyx_k_KLINE_INTERVAL_8HOUR[] = "KLINE_INTERVAL_8HOUR";
static const char __pyx_k_MARGIN_CROSS_TO_SPOT[] = "MARGIN_CROSS_TO_SPOT";
static const char __pyx_k_ORDER_RESP_TYPE_FULL[] = "ORDER_RESP_TYPE_FULL";
static const char __pyx_k_ORDER_STATUS_EXPIRED[] = "ORDER_STATUS_EXPIRED";
static const char __pyx_k_ORDER_TYPE_STOP_LOSS[] = "ORDER_TYPE_STOP_LOSS";
static const char __pyx_k_SPOT_TO_MARGIN_CROSS[] = "SPOT_TO_MARGIN_CROSS";
static const char __pyx_k_SST_d_6_t9AXU_2BBUUV[] = "\320\004)\320)?\320?S\320ST\330\010\016\210d\320\022\"\240!\2406\250\030\260\021\340\010\017\210t\2209\230A\230X\240U\250(\3202B\320BU\320UV";
static const char __pyx_k_TU_d_4AV81_t9AXU_8HH[] = "\320\004;\270>\310\033\320TU\330\010\016\210d\320\0224\260A\260V\2708\3001\340\010\017\210t\2209\230A\230X\240U\250(\260&\3208H\320H[\320[\\";
static const char __pyx_k_aggregate_trade_iter[] = "aggregate_trade_iter";
static const char __pyx_k_date_to_milliseconds[] = "date_to_milliseconds";
static const char __pyx_k_futures_cancel_order[] = "futures_cancel_order";
static const char __pyx_k_futures_coin_account[] = "futures_coin_account";
static const char __pyx_k_futures_create_order[] = "futures_create_order";
static const char __pyx_k_futures_funding_rate[] = "futures_funding_rate";
static const char __pyx_k_futures_stream_close[] = "futures_stream_close";
static const char __pyx_k_get_account_snapshot[] = "get_account_snapshot";
static const char __pyx_k_get_aggregate_trades[] = "get_aggregate_trades";
static const char __pyx_k_get_lending_position[] = "get_lending_position";
static const char __pyx_k_get_margin_oco_order[] = "get_margin_oco_order";
static const char __pyx_k_get_orderbook_ticker[] = "get_orderbook_ticker";
static const char __pyx_k_get_sub_account_list[] = "get_sub_account_list";
static const char __pyx_k_get_withdraw_history[] = "get_withdraw_history";
static const char __pyx_k_https_www_binance_us[] = "https://www.binance.us";
static const char __pyx_k_lending_daily_redeem[] = "lending/daily/redeem";
static const char __pyx_k_lending_project_list[] = "lending/project/list";
static const char __pyx_k_margin_isolated_pair[] = "margin/isolated/pair";
static const char __pyx_k_margin_maxBorrowable[] = "margin/maxBorrowable";
static const char __pyx_k_new_transfer_history[] = "new_transfer_history";
static const char __pyx_k_socks5_proxy_address[] = "socks5_proxy_address";
static const char __pyx_k_6nKq_d_q_ha_t9AXU_8HH[] = "\320\0046\260n\300K\310q\330\010\016\210d\320\022/\250q\260\006\260h\270a\340\010\017\210t\2209\230A\230X\240U\250(\260&\3208H\320H[\320[\\";
static const char __pyx_k_A_d_aw_e1_4s_aq_3aq_q[] = "\200A\360&\000\t\017\210d\320\022&\240a\240w\320.@\300\006\300e\3101\330\010\013\2104\210s\220$\220a\220q\330\014\022\320\022*\250!\2503\250a\250q\330\010\017\210q";
static const char __pyx_k_A_fCq_4y_1_2Q_1A_Qa_q[] = "\200A\330\010\016\210f\220C\220q\330\010\013\2104\210y\230\003\2301\330\014\023\2202\220Q\330\014\022\220)\2301\230A\330\014\022\320\022%\240Q\240a\330\010\017\210q";
static const char __pyx_k_An_exception_occurred[] = "An exception occurred: ";
static const char __pyx_k_BinanceRestApiManager[] = "BinanceRestApiManager";
static const char __pyx_k_FUTURES_COIN_DATA_URL[] = "FUTURES_COIN_DATA_URL";
static const char __pyx_k_KLINE_INTERVAL_12HOUR[] = "KLINE_INTERVAL_12HOUR";
static const char __pyx_k_KLINE_INTERVAL_1MONTH[] = "KLINE_INTERVAL_1MONTH";
static const char __pyx_k_MINING_TO_USDT_FUTURE[] = "MINING_TO_USDT_FUTURE";
static const char __pyx_k_ORDER_STATUS_CANCELED[] = "ORDER_STATUS_CANCELED";
static const char __pyx_k_ORDER_STATUS_REJECTED[] = "ORDER_STATUS_REJECTED";
static const char __pyx_k_capital_config_getall[] = "capital/config/getall";
static const char __pyx_k_create_margin_api_uri[] = "_create_margin_api_uri";
static const char __pyx_k_futures_cancel_orders[] = "futures_cancel_orders";
static const char __pyx_k_futures_exchange_info[] = "futures_exchange_info";
static const char __pyx_k_futures_open_interest[] = "futures_open_interest";
static const char __pyx_k_futures_recent_trades[] = "futures_recent_trades";
static const char __pyx_k_futures_symbol_ticker[] = "futures_symbol_ticker";
static const char __pyx_k_get_all_margin_orders[] = "get_all_margin_orders";
static const char __pyx_k_get_historical_klines[] = "get_historical_klines";
static const char __pyx_k_get_historical_trades[] = "get_historical_trades";
static const char __pyx_k_get_orderbook_tickers[] = "get_orderbook_tickers";
static const char __pyx_k_https_api_binance_api[] = "https://api.binance.{}/api";
static const char __pyx_k_https_www_binance_com[] = "https://www.binance.com";
static const char __pyx_k_lending_union_account[] = "lending/union/account";
static const char __pyx_k_self_FUTURES_COIN_URL[] = "\r\nself.FUTURES_COIN_URL: ";
static const char __pyx_k_self_FUTURES_DATA_URL[] = "\r\nself.FUTURES_DATA_URL: ";
static const char __pyx_k_stream_get_listen_key[] = "stream_get_listen_key";
static const char __pyx_k_ticker_allForceOrders[] = "ticker/allForceOrders";
static const char __pyx_k_AP_d_aw_e1_4s_aq_3aq_q[] = "\200A\360P\002\000\t\017\210d\320\022&\240a\240w\320.@\300\006\300e\3101\330\010\013\2104\210s\220$\220a\220q\330\014\022\320\022*\250!\2503\250a\250q\330\010\017\210q";
static const char __pyx_k_A_e3a_Kq_t9G1_HF_VVW_q[] = "\200A\360\010\000\t\017\210e\2203\220a\330\010\014\210K\220q\340\010\t\330\014\017\210t\2209\230G\2401\330\020\024\220H\230F\240!\330\010\017\320\017!\240\021\330\014\022\220&\230\001\230\022\320\033V\320VW\330\010\017\210q";
static const char __pyx_k_KLINE_INTERVAL_1MINUTE[] = "KLINE_INTERVAL_1MINUTE";
static const char __pyx_k_KLINE_INTERVAL_1SECOND[] = "KLINE_INTERVAL_1SECOND";
static const char __pyx_k_KLINE_INTERVAL_3MINUTE[] = "KLINE_INTERVAL_3MINUTE";
static const char __pyx_k_KLINE_INTERVAL_5MINUTE[] = "KLINE_INTERVAL_5MINUTE";
static const char __pyx_k_ORDER_RESP_TYPE_RESULT[] = "ORDER_RESP_TYPE_RESULT";
static const char __pyx_k_ORDER_TYPE_LIMIT_MAKER[] = "ORDER_TYPE_LIMIT_MAKER";
static const char __pyx_k_ORDER_TYPE_TAKE_PROFIT[] = "ORDER_TYPE_TAKE_PROFIT";
static const char __pyx_k_cancel_all_open_orders[] = "cancel_all_open_orders";
static const char __pyx_k_capital_deposit_hisrec[] = "capital/deposit/hisrec";
static const char __pyx_k_capital_withdraw_apply[] = "capital/withdraw/apply";
static const char __pyx_k_create_futures_api_uri[] = "_create_futures_api_uri";
static const char __pyx_k_futures_account_trades[] = "futures_account_trades";
static const char __pyx_k_futures_coin_get_order[] = "futures_coin_get_order";
static const char __pyx_k_futures_get_all_orders[] = "futures_get_all_orders";
static const char __pyx_k_futures_income_history[] = "futures_income_history";
static const char __pyx_k_get_margin_price_index[] = "get_margin_price_index";
static const char __pyx_k_get_open_margin_orders[] = "get_open_margin_orders";
static const char __pyx_k_get_sub_account_assets[] = "get_sub_account_assets";
static const char __pyx_k_https_api_binance_sapi[] = "https://api.binance.{}/sapi";
static const char __pyx_k_lending_daily_purchase[] = "lending/daily/purchase";
static const char __pyx_k_margin_isolated_create[] = "margin/isolated/create";
static const char __pyx_k_margin_maxTransferable[] = "margin/maxTransferable";
static const char __pyx_k_positionMargin_history[] = "positionMargin/history";
static const char __pyx_k_redeem_lending_product[] = "redeem_lending_product";
static const char __pyx_k_request_socks5_proxies[] = "request_socks5_proxies";
static const char __pyx_k_A_d_aw_e1_4s_aq_3aq_q_2[] = "\200A\360<\000\t\017\210d\320\022&\240a\240w\320.@\300\006\300e\3101\330\010\013\2104\210s\220$\220a\220q\330\014\022\320\022*\250!\2503\250a\250q\330\010\017\210q";
static const char __pyx_k_A_y_81G1_a_AQ_t_QhoV5PQ[] = "\200A\360\014\000\t\030\220y\240\001\240\021\330\010\027\220|\2408\2501\250G\2601\330\010\016\210a\320\017 \240\014\250A\250Q\330\010\017\210t\320\023-\250Q\250h\260o\300V\3105\320PQ";
static const char __pyx_k_BinanceRequestException[] = "BinanceRequestException";
static const char __pyx_k_KLINE_INTERVAL_15MINUTE[] = "KLINE_INTERVAL_15MINUTE";
static const char __pyx_k_KLINE_INTERVAL_30MINUTE[] = "KLINE_INTERVAL_30MINUTE";
static const char __pyx_k_cancel_margin_oco_order[] = "cancel_margin_oco_order";
static const char __pyx_k_capital_deposit_address[] = "capital/deposit/address";
static const char __pyx_k_create_margin_oco_order[] = "create_margin_oco_order";
static const char __pyx_k_futures_account_balance[] = "futures_account_balance";
static const char __pyx_k_futures_change_leverage[] = "futures_change_leverage";
static const char __pyx_k_futures_coin_mark_price[] = "futures_coin_mark_price";
static const char __pyx_k_futures_coin_order_book[] = "futures_coin_order_book";
static const char __pyx_k_futures_commission_rate[] = "futures_commission_rate";
static const char __pyx_k_futures_get_open_orders[] = "futures_get_open_orders";
static const char __pyx_k_get_latest_release_info[] = "get_latest_release_info";
static const char __pyx_k_get_margin_loan_details[] = "get_margin_loan_details";
static const char __pyx_k_get_max_margin_transfer[] = "get_max_margin_transfer";
static const char __pyx_k_get_withdraw_history_id[] = "get_withdraw_history_id";
static const char __pyx_k_https_fapi_binance_fapi[] = "https://fapi.binance.{}/fapi";
static const char __pyx_k_https_www_trbinance_com[] = "https://www.trbinance.com";
static const char __pyx_k_lending_positionChanged[] = "lending/positionChanged";
static const char __pyx_k_make_universal_transfer[] = "make_universal_transfer";
static const char __pyx_k_margin_isolated_account[] = "margin/isolated/account";
static const char __pyx_k_margin_stream_keepalive[] = "margin_stream_keepalive";
static const char __pyx_k_sub_account_spotSummary[] = "sub-account/spotSummary";
static const char __pyx_k_transfer_margin_to_spot[] = "transfer_margin_to_spot";
static const char __pyx_k_transfer_spot_to_margin[] = "transfer_spot_to_margin";
static const char __pyx_k_userDataStream_isolated[] = "userDataStream/isolated";
static const char __pyx_k_AD_d_aw_C6_a_4s_aq_3aq_q[] = "\200A\360D\001\000\t\017\210d\320\022&\240a\240w\320.C\3006\310\025\310a\330\010\013\2104\210s\220$\220a\220q\330\014\022\320\022*\250!\2503\250a\250q\330\010\017\210q";
static const char __pyx_k_AT_d_q_A_HCq_t1Jc_vQ_q_q[] = "\200A\360T\001\000\t\017\210d\220%\220q\320\030(\250\010\260\004\260A\340\010\014\210H\220C\220q\230\001\330\014\017\210t\2201\220J\230c\240\026\240v\250Q\330\020\027\220q\340\010\017\210q";
static const char __pyx_k_BinanceWithdrawException[] = "BinanceWithdrawException";
static const char __pyx_k_Created_SOCKS5_proxy_URI[] = "Created SOCKS5 proxy URI: ";
static const char __pyx_k_account_apiTradingStatus[] = "account/apiTradingStatus";
static const char __pyx_k_binance_com_coin_futures[] = "binance.com-coin-futures";
static const char __pyx_k_capital_withdraw_history[] = "capital/withdraw/history";
static const char __pyx_k_enableFastWithdrawSwitch[] = "enableFastWithdrawSwitch";
static const char __pyx_k_enable_subaccount_margin[] = "enable_subaccount_margin";
static const char __pyx_k_futures_account_transfer[] = "futures_account_transfer";
static const char __pyx_k_futures_aggregate_trades[] = "futures_aggregate_trades";
static const char __pyx_k_futures_leverage_bracket[] = "futures_leverage_bracket";
static const char __pyx_k_futures_orderbook_ticker[] = "futures_orderbook_ticker";
static const char __pyx_k_futures_stream_keepalive[] = "futures_stream_keepalive";
static const char __pyx_k_get_bnb_burn_spot_margin[] = "get_bnb_burn_spot_margin";
static const char __pyx_k_get_lending_product_list[] = "get_lending_product_list";
static const char __pyx_k_get_margin_repay_details[] = "get_margin_repay_details";
static const char __pyx_k_https_api_binance_us_api[] = "https://api.binance.us/api";
static const char __pyx_k_interval_to_milliseconds[] = "interval_to_milliseconds";
static const char __pyx_k_last_update_check_github[] = "last_update_check_github";
static const char __pyx_k_margin_isolated_allPairs[] = "margin/isolated/allPairs";
static const char __pyx_k_margin_isolated_transfer[] = "margin/isolated/transfer";
static const char __pyx_k_purchase_lending_product[] = "purchase_lending_product";
static const char __pyx_k_request_futures_coin_api[] = "_request_futures_coin_api";
static const char __pyx_k_request_futures_data_api[] = "_request_futures_data_api";
static const char __pyx_k_unicorn_binance_rest_api[] = "unicorn-binance-rest-api";
static const char __pyx_k_A_d_c_c_s_1_3axvS_5_a_1_q[] = "\200A\360.\000\t\017\210d\220,\230c\240\021\340\010\013\210;\220c\230\021\330\014\020\220\007\220s\230!\2301\330\020\023\2203\220a\220x\230v\240S\250\003\2505\260\006\260a\330\024\033\2301\330\010\017\210q";
static const char __pyx_k_E_a_d_3d_0_4q_t2T_7_9Bd_A[] = "\320\004,\250E\260\031\270,\300a\330\010\016\210d\220!\330\010\023\2203\220d\320\0320\260\003\2604\260q\330\010\017\210t\2202\220T\230\022\2307\240!\2409\250B\250d\260\"\260A";
static const char __pyx_k_capital_deposit_subHisrec[] = "capital/deposit/subHisrec";
static const char __pyx_k_disableFastWithdrawSwitch[] = "disableFastWithdrawSwitch";
static const char __pyx_k_enable_subaccount_futures[] = "enable_subaccount_futures";
static const char __pyx_k_futures_coin_cancel_order[] = "futures_coin_cancel_order";
static const char __pyx_k_futures_coin_create_order[] = "futures_coin_create_order";
static const char __pyx_k_futures_coin_funding_rate[] = "futures_coin_funding_rate";
static const char __pyx_k_futures_coin_stream_close[] = "futures_coin_stream_close";
static const char __pyx_k_futures_get_position_mode[] = "futures_get_position_mode";
static const char __pyx_k_futures_historical_trades[] = "futures_historical_trades";
static const char __pyx_k_futures_place_batch_order[] = "futures_place_batch_order";
static const char __pyx_k_https_api_binance_com_api[] = "https://api.binance.com/api";
static const char __pyx_k_https_api_binance_us_sapi[] = " https://api.binance.us/sapi";
static const char __pyx_k_sub_account_margin_enable[] = "sub-account/margin/enable";
static const char __pyx_k_1_i_1_3d_0_4q_t_Rt2WAYb_Ba[] = "\320\0041\260\025\260i\270|\3101\330\010\023\2203\220d\320\0320\260\003\2604\260q\330\010\017\210t\320\023%\240R\240t\2502\250W\260A\260Y\270b\300\004\300B\300a";
static const char __pyx_k_AL_d_aw_J_PUUV_4s_aq_3aq_q[] = "\200A\360L\002\000\t\017\210d\320\022&\240a\240w\320.J\310&\320PU\320UV\330\010\013\2104\210s\220$\220a\220q\330\014\022\320\022*\250!\2503\250a\250q\330\010\017\210q";
static const char __pyx_k_A_D_A_7_Q_1_A_4_S_1_Cs_1_1[] = "\200A\360\014\000\t\035\230D\240\014\250A\330\010\013\2107\220#\220Q\330\014 \320 1\260\023\260A\330\010\013\2104\320\017\"\240#\240S\250\001\330\014\023\2201\330\r\021\320\021$\240C\240s\250!\330\014\023\2201\340\014\023\2201";
static const char __pyx_k_BinanceRestApiManager__get[] = "BinanceRestApiManager._get";
static const char __pyx_k_BinanceRestApiManager__put[] = "BinanceRestApiManager._put";
static const char __pyx_k_BinanceRestApiManager_ping[] = "BinanceRestApiManager.ping";
static const char __pyx_k_ORDER_TYPE_STOP_LOSS_LIMIT[] = "ORDER_TYPE_STOP_LOSS_LIMIT";
static const char __pyx_k_binance_com_coin_futures_2[] = "binance.com-coin_futures";
static const char __pyx_k_binance_com_margin_testnet[] = "binance.com-margin-testnet";
static const char __pyx_k_capital_deposit_subAddress[] = "capital/deposit/subAddress";
static const char __pyx_k_futures_change_margin_type[] = "futures_change_margin_type";
static const char __pyx_k_futures_coin_cancel_orders[] = "futures_coin_cancel_orders";
static const char __pyx_k_futures_coin_exchange_info[] = "futures_coin_exchange_info";
static const char __pyx_k_futures_coin_open_interest[] = "futures_coin_open_interest";
static const char __pyx_k_futures_coin_recent_trades[] = "futures_coin_recent_trades";
static const char __pyx_k_futures_coin_symbol_ticker[] = "futures_coin_symbol_ticker";
static const char __pyx_k_futures_liquidation_orders[] = "futures_liquidation_orders";
static const char __pyx_k_futures_open_interest_hist[] = "futures_open_interest_hist";
static const char __pyx_k_get_asset_dividend_history[] = "get_asset_dividend_history";
static const char __pyx_k_get_isolated_margin_symbol[] = "get_isolated_margin_symbol";
static const char __pyx_k_get_open_margin_oco_orders[] = "get_open_margin_oco_orders";
static const char __pyx_k_https_api_binance_com_sapi[] = " https://api.binance.com/sapi";
static const char __pyx_k_https_fapi_binance_us_fapi[] = "https://fapi.binance.us/fapi";
static const char __pyx_k_lending_daily_product_list[] = "lending/daily/product/list";
static const char __pyx_k_q_3a_uD_4y_q_a_4y_Q_A_4yPQ[] = "\320\004\037\230q\360\016\000\t\014\320\013\033\2303\230a\330\014\017\210u\220D\230\003\2304\230y\250\017\260q\330\020\026\320\026)\250\021\250$\250a\330\010\t\330\014\020\320\020\"\240!\330\014\023\2204\220y\240\005\240Q\330\017\020\330\014\022\320\022)\250\021\320*A\300\022\3004\300y\320PQ";
static const char __pyx_k_self_FUTURES_COIN_DATA_URL[] = "\r\nself.FUTURES_COIN_DATA_URL: ";
static const char __pyx_k_sub_account_futures_enable[] = "sub-account/futures/enable";
static const char __pyx_k_sub_account_margin_account[] = "sub-account/margin/account";
static const char __pyx_k_unicorn_binance_rest_api_2[] = "unicorn_binance_rest_api";
static const char __pyx_k_BinanceRestApiManager__post[] = "BinanceRestApiManager._post";
static const char __pyx_k_MARGIN_CROSS_TO_USDT_FUTURE[] = "MARGIN_CROSS_TO_USDT_FUTURE";
static const char __pyx_k_ORDER_STATUS_PENDING_CANCEL[] = "ORDER_STATUS_PENDING_CANCEL";
static const char __pyx_k_USDT_FUTURE_TO_MARGIN_CROSS[] = "USDT_FUTURE_TO_MARGIN_CROSS";
static const char __pyx_k_binance_com_futures_testnet[] = "binance.com-futures-testnet";
static const char __pyx_k_binance_com_isolated_margin[] = "binance.com-isolated_margin";
static const char __pyx_k_create_futures_coin_api_url[] = "_create_futures_coin_api_url";
static const char __pyx_k_create_futures_data_api_uri[] = "_create_futures_data_api_uri";
static const char __pyx_k_enable_fast_withdraw_switch[] = "enable_fast_withdraw_switch";
static const char __pyx_k_futures_coin_account_trades[] = "futures_coin_account_trades";
static const char __pyx_k_futures_coin_get_all_orders[] = "futures_coin_get_all_orders";
static const char __pyx_k_futures_coin_income_history[] = "futures_coin_income_history";
static const char __pyx_k_get_isolated_margin_account[] = "get_isolated_margin_account";
static const char __pyx_k_https_fapi_binance_com_fapi[] = "https://fapi.binance.com/fapi";
static const char __pyx_k_https_www_trbinance_com_api[] = "https://www.trbinance.com/api";
static const char __pyx_k_lending_daily_userLeftQuota[] = "lending/daily/userLeftQuota";
static const char __pyx_k_sub_account_futures_account[] = "sub-account/futures/account";
static const char __pyx_k_sub_account_margin_transfer[] = "sub-account/margin/transfer";
static const char __pyx_k_toggle_bnb_burn_spot_margin[] = "toggle_bnb_burn_spot_margin";
static const char __pyx_k_6e9LPQ_d_3d_0_4q_t2T_7_9Bd_A[] = "\320\0046\260e\2709\300L\320PQ\330\010\016\210d\220!\330\010\023\2203\220d\320\0320\260\003\2604\260q\330\010\017\210t\2202\220T\230\022\2307\240!\2409\250B\250d\260\"\260A";
static const char __pyx_k_A_E_fA_t3a_gRuA_e1D_1_1_AQ_q[] = "\200A\360\022\000\t\031\230\001\330\010\021\220\021\330\010\014\210E\220\031\230$\230f\240A\330\014\017\210t\2203\220a\330\020 \240\001\340\020\026\220g\230R\230u\240A\340\010\016\210e\2201\220D\230\n\240!\2401\330\010\013\2101\330\014\022\220'\230\022\230=\250\004\250A\250Q\330\010\017\210q";
static const char __pyx_k_BinanceRestApiManager___exit[] = "BinanceRestApiManager.__exit__";
static const char __pyx_k_BinanceRestApiManager___init[] = "BinanceRestApiManager.__init__";
static const char __pyx_k_ORDER_TYPE_TAKE_PROFIT_LIMIT[] = "ORDER_TYPE_TAKE_PROFIT_LIMIT";
static const char __pyx_k_disable_fast_withdraw_switch[] = "disable_fast_withdraw_switch";
static const char __pyx_k_futures_change_position_mode[] = "futures_change_position_mode";
static const char __pyx_k_futures_coin_account_balance[] = "futures_coin_account_balance";
static const char __pyx_k_futures_coin_change_leverage[] = "futures_coin_change_leverage";
static const char __pyx_k_futures_coin_get_open_orders[] = "futures_coin_get_open_orders";
static const char __pyx_k_futures_position_information[] = "futures_position_information";
static const char __pyx_k_get_earliest_valid_timestamp[] = "_get_earliest_valid_timestamp";
static const char __pyx_k_get_lending_daily_quota_left[] = "get_lending_daily_quota_left";
static const char __pyx_k_get_lending_interest_history[] = "get_lending_interest_history";
static const char __pyx_k_get_lending_purchase_history[] = "get_lending_purchase_history";
static const char __pyx_k_https_api_trbinance_com_sapi[] = " https://api.trbinance.com/sapi";
static const char __pyx_k_https_testnet_binance_vision[] = "https://testnet.binance.vision";
static const char __pyx_k_isolated_margin_stream_close[] = "isolated_margin_stream_close";
static const char __pyx_k_lending_daily_token_position[] = "lending/daily/token/position";
static const char __pyx_k_lending_union_purchaseRecord[] = "lending/union/purchaseRecord";
static const char __pyx_k_margin_stream_get_listen_key[] = "margin_stream_get_listen_key";
static const char __pyx_k_sub_account_futures_transfer[] = "sub-account/futures/transfer";
static const char __pyx_k_BinanceRestApiManager___enter[] = "BinanceRestApiManager.__enter__";
static const char __pyx_k_BinanceRestApiManager__delete[] = "BinanceRestApiManager._delete";
static const char __pyx_k_ORDER_STATUS_PARTIALLY_FILLED[] = "ORDER_STATUS_PARTIALLY_FILLED";
static const char __pyx_k_cancel_all_open_margin_orders[] = "cancel_all_open_margin_orders";
static const char __pyx_k_futures_coin_aggregate_trades[] = "futures_coin_aggregate_trades";
static const char __pyx_k_futures_coin_continous_klines[] = "futures_coin_continous_klines";
static const char __pyx_k_futures_coin_leverage_bracket[] = "futures_coin_leverage_bracket";
static const char __pyx_k_futures_coin_orderbook_ticker[] = "futures_coin_orderbook_ticker";
static const char __pyx_k_futures_coin_stream_keepalive[] = "futures_coin_stream_keepalive";
static const char __pyx_k_futures_stream_get_listen_key[] = "futures_stream_get_listen_key";
static const char __pyx_k_get_subaccount_margin_details[] = "get_subaccount_margin_details";
static const char __pyx_k_get_subaccount_margin_summary[] = "get_subaccount_margin_summary";
static const char __pyx_k_https_fapi_trbinance_com_fapi[] = "https://fapi.trbinance.com/fapi";
static const char __pyx_k_lending_union_interestHistory[] = "lending/union/interestHistory";
static const char __pyx_k_query_subaccount_spot_summary[] = "query_subaccount_spot_summary";
static const char __pyx_k_request_futures_coin_data_api[] = "_request_futures_coin_data_api";
static const char __pyx_k_socks5_proxy_ssl_verification[] = "socks5_proxy_ssl_verification";
static const char __pyx_k_sub_account_transfer_subToSub[] = "sub-account/transfer/subToSub";
static const char __pyx_k_sub_account_universalTransfer[] = "sub-account/universalTransfer";
static const char __pyx_k_11A_2_d_AX_PUUV_PPQ_7_Q_3aq_Cq[] = "\320\0041\3201A\300\021\3602\000\t\017\210d\320\022,\250A\250X\260]\300'\310\027\320PU\320UV\330-=\320=P\320PQ\330\010\013\2107\220#\220Q\330\014\023\2203\220a\220q\330\r\024\220C\220q\330\014\023\2201\340\014\023\2203\220a\220q";
static const char __pyx_k_12_d_ax_A_uTU_77J_7_Q_3aq_Cq_1[] = "\320\004+\320+;\2701\3602\000\t\017\210d\320\022&\240a\240x\320/A\300\027\310\007\310u\320TU\330'7\3207J\310!\330\010\013\2107\220#\220Q\330\014\023\2203\220a\220q\330\r\024\220C\220q\330\014\023\2201\340\014\023\2203\220a\220q";
static const char __pyx_k_4y_1_2Q_1A_Qa_fAQ_q_aq_aq_a_87[] = "\320\004,\320,@\300\001\330\010\013\2104\210y\230\003\2301\330\014\023\2202\220Q\330\014\022\220)\2301\230A\330\014\022\320\022%\240Q\240a\360\006\000\t\n\330\014\026\220f\230A\230Q\330\014\031\230\026\230q\240\001\330\014\020\220\006\220a\220q\330\014\020\220\006\220a\220q\330\017\020\330\014\026\220a\330\014\031\230\021\330\010\013\2108\2207\230%\230t\240;\250g\260Q\330\014\022\220&\230\003\2301\330\014\020\220\013\2301\330\014\020\220\016\230a\330\014\017\210t\2209\230G\2401\330\020\024\220H\230F\240!\330\014\020\220\013\2304\230~\250Q\360\006\000\t\017\210a\210}\230A\360\006\000\t\014\2104\210q\330\014\022\220'\230\021\230$\230a\340\010\017\210v\220T\230\021\230(\240!\330\010\013\2105\220\004\220J\230a\230v\240Q\330\014\022\220!\220:\230Q\360\006\000\r\020\320\017!\240\023\240F\250!\2501\340\020\026\220g\230Q\230f\240A\240W\250A\250Q\330\020\024\220F\230!\2307\240!\2401\340\010\013\2101\340\014\022\220!\2207\230!\230?\250#\250Q\250d\260%\260s\270\"\270E\300\022\3004\300q\330\014\022\220!\2207\230!\230?\250$\320.B\300!\3006\310\021\310!\360\006\000\t\014\2101\340\014\022\220!\220:\230T\240\036\250q\260\006\260a\260q\340\014\030\230\001\230\022\2304\230t\2405\250\n\260)\2701\270F\300!\3009\310C\310v\320UX\320XY\330\014\020\220\005\220X\230Q\230a\330\020\024\220F\230!\2307\240!\2401\360\006\000\t\014\2105\220\005\220W\230C\230v\240S\250\001\330\014\022\220!\220<\230s\240%\240y\260\001\330\014\020\220\006\220a\220q\340\010\013\2104\320\017%\240W\250E\260\024\260T\3209L\310G\320ST\330\014\020\220\014\230G\2401\240D\250\n\260'\270\021\270!\330:B\300$\300a\330:A\300\024\300Q\330<=\340\014\020\220\014\230G\2401\240D\250\n\260'\270\021\270'\300\021\340\010\017\210t\320\023$\240A\320%5\260Q";
static const char __pyx_k_A2_d_q_WG5PQ_88K1_7_Q_3aq_Cq_1[] = "\320\004,\320,<\270A\3602\000\t\017\210d\320\022'\240q\250\010\260\r\270W\300G\3105\320PQ\330(8\3208K\3101\330\010\013\2107\220#\220Q\330\014\023\2203\220a\220q\330\r\024\220C\220q\330\014\023\2201\340\014\023\2203\220a\220q";
static const char __pyx_k_A_t_T_PPWWX_aq_t1_d_aq_a_1_A_1[] = "\200A\360\n\000\t\n\330\014\017\210t\320\023)\250\027\260\005\260T\270\024\320=P\320PW\320WX\330\020\032\230(\240$\240a\240q\340'/\250t\2601\330'.\250d\260!\340\020\032\230(\240$\240a\240q\340\014\"\240'\250\025\250a\330\014\023\2201\330\010\017\210}\230A\330\014\022\220&\230\001\230\022\320\033\\\320\\]\330\014\023\2201";
static const char __pyx_k_A_t_s_q_q_aq_D_Q_D_AT_G1Jl_T_q[] = "\200A\330\010\027\220t\230>\250\021\250!\330\010\027\220s\230%\230q\240\001\240\027\250\007\250q\260\001\260\021\260$\260a\260q\270\004\270D\300\005\300Q\330\010\014\210D\220\004\220A\220T\230\033\240G\2501\250J\260l\300'\310\021\310*\320T[\320[\\\330\010\017\210q\220\n\230!";
static const char __pyx_k_BinanceRestApiManager__request[] = "BinanceRestApiManager._request";
static const char __pyx_k_BinanceRestApiManager_instance[] = "`BinanceRestApiManager()` instance has already been stopped and cannot be used.";
static const char __pyx_k_BinanceRestApiManager_withdraw[] = "BinanceRestApiManager.withdraw";
static const char __pyx_k_Read_the_docs_to_see_a_list_of[] = "'! Read the docs to see a list of supported exchanges: https://oliver-zehentleitner.github.io/unicorn-binance-rest-api/readme.html#what-are-the-benefits-of-the-unicorn-binance-rest-api";
static const char __pyx_k_create_isolated_margin_account[] = "create_isolated_margin_account";
static const char __pyx_k_futures_cancel_all_open_orders[] = "futures_cancel_all_open_orders";
static const char __pyx_k_futures_change_position_margin[] = "futures_change_position_margin";
static const char __pyx_k_futures_coin_get_position_mode[] = "futures_coin_get_position_mode";
static const char __pyx_k_futures_coin_historical_trades[] = "futures_coin_historical_trades";
static const char __pyx_k_futures_coin_mark_price_klines[] = "futures_coin_mark_price_klines";
static const char __pyx_k_futures_coin_place_batch_order[] = "futures_coin_place_batch_order";
static const char __pyx_k_get_account_api_trading_status[] = "get_account_api_trading_status";
static const char __pyx_k_get_lending_redemption_history[] = "get_lending_redemption_history";
static const char __pyx_k_get_subaccount_deposit_address[] = "get_subaccount_deposit_address";
static const char __pyx_k_get_subaccount_deposit_history[] = "get_subaccount_deposit_history";
static const char __pyx_k_get_subaccount_futures_details[] = "get_subaccount_futures_details";
static const char __pyx_k_get_subaccount_futures_summary[] = "get_subaccount_futures_summary";
static const char __pyx_k_get_universal_transfer_history[] = "get_universal_transfer_history";
static const char __pyx_k_hn4DD___7_Q_gU_d_s_E_uD_M_4_1M[] = "\320\004\036\230h\240n\3204D\320D_\320_`\360,\000\t\014\2107\220#\220Q\330\014\017\210\230g\240U\250$\250d\260-\270s\300!\330\020\024\220E\230\021\330\021 \240\007\240u\250D\260\004\260M\300\027\310\001\330\020\023\2204\220|\2401\240M\260\023\260D\270\005\270S\300\002\300!\330\024\030\230\005\230Q\340\014\020\220\005\220Q\330\010\017\210t\2201";
static const char __pyx_k_lending_union_redemptionRecord[] = "lending/union/redemptionRecord";
static const char __pyx_k_1_T_aq_wc_q_s_4y_XYiq_IU_aabbcH[] = "\320\004#\2401\330\010\t\330\014\025\220T\230\031\240(\250$\250a\250q\330\014\017\210w\220c\230\021\330\020\027\220q\330\014\020\320\020 \240\017\250s\260!\2604\260y\300\001\330 -\250X\260Y\270i\300q\310\004\310I\320U]\320]a\320ab\320bc\330Hd\320dn\320no\330 *\250#\250Q\250a\330\010\017\210}\230A\330\014\022\220&\230\001\230\022\320\033V\320VW\330\014\023\2201\330\010\017\210q";
static const char __pyx_k_4A2_d_7_t84q_A_7_Q_3aq_Cq_1_3aq[] = "\320\004$\320$4\260A\3602\000\t\017\210d\220&\230\001\320\031+\2507\260%\260t\2708\3004\300q\330\031)\320)<\270A\330\010\013\2107\220#\220Q\330\014\023\2203\220a\220q\330\r\024\220C\220q\330\014\023\2201\340\014\023\2203\220a\220q";
static const char __pyx_k_AL_1MVSXXY_IV1A_uCvT_avS_q_iq_a[] = "\200A\360L\001\000\t\022\220\024\320\025)\250\021\250'\3201M\310V\320SX\320XY\340\010\014\210I\220V\2301\230A\330\014\017\210u\220C\220v\230T\240\025\240a\240v\250S\260\001\330\020\027\220q\340\010\016\210i\220q\320\030>\270a";
static const char __pyx_k_A_0_a_AQ_4q_3a_q_1A_1HA_az_1_t1[] = "\320\004A\300\021\330\036\037\3600\000\t\027\220a\360\006\000\t\025\320\024,\250A\250Q\360\006\000\t\014\2104\210q\220\013\2303\230a\330\014\027\220q\340\014\027\320\027+\2501\250A\360\006\000\t\032\230\024\320\035;\2701\270H\300A\330\010\026\220a\220z\240\021\360\006\000\t\022\220\021\330\010\013\2101\330\014\017\210t\2201\220I\230S\240\001\330\020\031\230\021\340\020\031\320\031-\250Q\250a\340\010\016\210a\330\010\t\340\014\030\230\004\230K\240q\330\020\027\220q\330\020\031\230\021\330\020\026\220a\330\020\032\230!\330\020\030\230\001\360\010\000\r\020\210t\2203\220a\220q\330\020\021\360\006\000\r\034\2301\360\006\000\r\030\220y\240\002\240\"\240A\240Q\340\014\023\2201\340\014\017\210s\220!\220;\230b\240\001\340\020\021\360\006\000\r\031\230\001\360\006\000\r\020\210t\2202\220R\220s\230!\330\020\024\220F\230!\2301\340\010\017\210q";
static const char __pyx_k_A_4_a_3e1_a_4uBd_q_d_RRS_4_t_4A[] = "\320\004$\240A\360\014\000\t\014\2104\320\017(\250\001\250\031\260$\260a\260|\3003\300e\3101\330\021\025\320\025.\250a\250|\2704\270u\300B\300d\310%\310q\330\014\020\320\020)\250\021\250,\260d\320:R\320RS\330\010\013\2104\320\017(\250\001\250\021\330\014\r\330\020\027\220t\320\0334\260A\260Y\270a\270q\330\023\024\330\020\027\220q\340\014\023\2201";
static const char __pyx_k_A_Python_SDK_to_use_the_Binance[] = "\n    A Python SDK to use the Binance REST API`s (com+testnet, com-margin+testnet, com-isolated_margin+testnet,\n    com-futures+testnet, us, \"tr\") in a simple, fast, flexible, robust and fully-featured way.\n\n    Binance.com rest API documentation:\n        -\n    Binance.vision (Testnet) rest API documentation:\n        -\n    Binance.us rest API documentation:\n        -\n    TRBinance.com rest API documentation:\n        - https://www.trbinance.com/apidocs/#api-document-description\n\n    Binance API Client constructor\n\n    :param api_key: Api Key\n    :type api_key: str.\n    :param api_secret: Api Secret\n    :type api_secret: str.\n    :param requests_params: optional - Dictionary of requests params to use for all calls\n    :type requests_params: dict.\n    :param tld: Top Level Domain of the Binance endpoint, Default is False\n    :type tld: str.\n    :param warn_on_update: set to `False` to disable the update warning\n    :type warn_on_update: bool\n    :param exchange: Select binance.com, binance.com-testnet, binance.com-margin, binance.com-margin-testnet,\n             binance.com-isolated_margin, binance.com-isolated_margin-testnet, binance.com-futures,\n             binance.com-futures-testnet, binance.com-coin_futures, binance.us or trbinance.com (default: binance.com)\n             This overrules parameter `tld`.\n    :type exchange: str\n    :param debug: If True the lib adds additional information to logging outputs\n    :type debug:  bool\n    :param disable_colorama: set to True to disable the use of `colorama <https://pypi.org/project/colorama/>`_\n    :type disable_colorama: bool\n    :param socks5_proxy_server: Set this to activate the usage of a socks5 proxy. Example: '127.0.0.1:9050'\n    :type socks5_proxy_server:  str\n    :param socks5_proxy_user: Set this to activate the usage of a socks5 proxy user. Example: 'alice'\n    :type socks5_proxy_user:  str\n    :param socks5_proxy_pass: Set this to activate the usage of a socks5 proxy pa""ssword.\n    :type socks5_proxy_pass:  str\n    :param socks5_proxy_ssl_verification: Set to `False` to disable SSL server verification. Default is `True`.\n    :type socks5_proxy_ssl_verification:  bool\n    ";
static const char __pyx_k_BinanceRestApiManager__generate[] = "BinanceRestApiManager._generate_signature";
static const char __pyx_k_BinanceRestApiManager_aggregate[] = "BinanceRestApiManager.aggregate_trade_iter";
static const char __pyx_k_BinanceRestApiManager_get_asset[] = "BinanceRestApiManager.get_asset_balance";
static const char __pyx_k_BinanceRestApiManager_get_fixed[] = "BinanceRestApiManager.get_fixed_activity_project_list";
static const char __pyx_k_BinanceRestApiManager_get_order[] = "BinanceRestApiManager.get_order_book";
static const char __pyx_k_BinanceRestApiManager_get_trade[] = "BinanceRestApiManager.get_trade_fee";
static const char __pyx_k_BinanceRestApiManager_is_update[] = "BinanceRestApiManager.is_update_availabe";
static const char __pyx_k_BinanceRestApiManager_order_oco[] = "BinanceRestApiManager.order_oco_buy";
static const char __pyx_k_BinanceRestApiManager_universal[] = "BinanceRestApiManager.universal_transfer";
static const char __pyx_k_LA8_a_d_ax_J_QXX_77J_7_Q_3aq_Cq[] = "\320\004<\320<L\310A\3608\000\t\n\330\014\026\220a\340\010\016\210d\320\022&\240a\240x\320/J\310'\320QX\320X]\320]^\330'7\3207J\310!\330\010\013\2107\220#\220Q\330\014\023\2203\220a\220q\330\r\024\220C\220q\330\014\023\2201\340\014\023\2203\220a\220q";
static const char __pyx_k_There_is_no_entry_with_withdraw[] = "There is no entry with withdraw id";
static const char __pyx_k_create_futures_coin_data_api_ur[] = "_create_futures_coin_data_api_url";
static const char __pyx_k_futures_coin_change_margin_type[] = "futures_coin_change_margin_type";
static const char __pyx_k_futures_coin_index_price_klines[] = "futures_coin_index_price_klines";
static const char __pyx_k_futures_coin_liquidation_orders[] = "futures_coin_liquidation_orders";
static const char __pyx_k_futures_coin_open_interest_hist[] = "futures_coin_open_interest_hist";
static const char __pyx_k_futures_position_margin_history[] = "futures_position_margin_history";
static const char __pyx_k_get_all_isolated_margin_symbols[] = "get_all_isolated_margin_symbols";
static const char __pyx_k_get_fixed_activity_project_list[] = "get_fixed_activity_project_list";
static const char __pyx_k_get_historical_klines_generator[] = "get_historical_klines_generator";
static const char __pyx_k_get_open_isolated_margin_orders[] = "get_open_isolated_margin_orders";
static const char __pyx_k_get_subaccount_transfer_history[] = "get_subaccount_transfer_history";
static const char __pyx_k_https_dapi_binance_futures_data[] = "https://dapi.binance.{}/futures/data";
static const char __pyx_k_https_fapi_binance_futures_data[] = "https://fapi.binance.{}/futures/data";
static const char __pyx_k_https_testnet_binancefuture_com[] = "https://testnet.binancefuture.com/fapi";
static const char __pyx_k_is_available_please_consider_up[] = " is available, please consider updating! Changelog: https://oliver-zehentleitner.github.io/unicorn-binance-rest-api/changelog.html";
static const char __pyx_k_make_subaccount_margin_transfer[] = "make_subaccount_margin_transfer";
static const char __pyx_k_request_Got_api_key_and_api_sec[] = "_request() - Got `api_key` and `api_secret` via `**kwargs`, resetting request session.";
static const char __pyx_k_AT_83gT_q_V1A_d_ax_I_uTU_4s_aq_3[] = "\200A\360T\001\000\t\014\2108\2203\220g\230T\240\027\250\007\250q\330\014\022\220!\220:\230V\2401\240A\330\010\016\210d\320\022&\240a\240x\320/I\310\026\310u\320TU\330\010\013\2104\210s\220$\220a\220q\330\014\022\320\022*\250!\2503\250a\250q\330\010\017\210q";
static const char __pyx_k_A_Q_a_1_1_a_A_A_0_1_a_e1B_oQ_Qhg[] = "\200A\330\021\032\230!\330\021\035\230Q\330\021\"\240!\330\021\026\220a\330\021!\240\021\330\021\033\2301\330\021#\2401\330\021\030\230\001\330\021&\240a\330\021$\240A\330\021$\240A\330\0210\260\001\340\010\014\320\014#\2401\330\010\014\320\014&\240a\330\010\016\210e\2201\220B\320\026*\250$\250o\270Q\330\026\032\230#\230Q\230h\240g\250V\2603\260a\260x\270x\320GZ\320Z[\330\010\014\210K\220q\330\010\014\210K\220q\340\010\013\2104\210y\230\003\2301\330\014\017\320\017 \240\007\240q\330\020\026\220e\2301\230B\320\0367\260x\270q\330\020\030\230\005\230Q\330\014\020\220\014\230A\330\014\020\220\t\230\021\340\014\017\320\017#\2403\240a\330\020\024\320\024;\2701\330\020\024\320\0248\270\001\330\020\024\320\0248\270\001\330\020\024\320\0248\270\001\330\020\024\320\024E\300Q\360\006\000\021\025\320\0245\260Q\330\020\024\320\024)\250\021\330\020\024\320\024)\250\021\330\020\024\320\024+\2504\320/D\320DW\320W]\320]^\320^_\330\020\"\240!\330\020\023\2204\320\027*\250'\260\021\330\024'\240t\2501\330\024\027\220t\320\033.\250g\260Q\330\030+\2502\250U\260$\260a\330\024'\240q\330\020#\2402\240T\250\024\320-E\300T\310\021\330\020\026\220e\2301\230B\320\036<\270A\330\020\024\220A\330\024\034\230A\330\024\035\230Q\360\006\000\r\020\210t\2207\230!\340\020\026\220h\230a\230q\340\020\024\220K\230t\2408\2507\260!\2601\330\020\024\320\024&\240d\250/\270\027\300\001\300\021\330\020\024\220O\2404\240|\2607\270!\2701\330\020\024\220O\2404\240|\2607\270!\2701\330\020\024\320\024(\250\004\320,=\270W\300A\300Q\330\020\024\320\024(\250\004\320,=\270W\300A\300Q\330\020\024\320\024-\250T\3201G\300w\310a\310q\340\014\017\210t\220:\230S\240\001\330\020\024\220K\230q\330\020\024\320\024&\240a\330\020\024\220O\2401\330\020\024\220O\2401\330\020\024\320\024(\250\001\330\020\024\320\024(\250\001\330\020\024\320\024-\250Q\330\021\025\220Z\230s\320\"8\270\003\2704\270z\310\023\310A\340\020\024\220K\230q\330\020\024\320\024&\240a\330\020\024\220O\2401\330\020\024\220O\2401\330\020\024\320\024(\250\001\330""\020\024\320\024(\250\001\330\020\024\320\024-\250Q\330\021\025\220Z\230s\240!\330\020\024\220K\230q\330\020\024\320\024&\240a\330\020\024\220O\2401\330\020\024\220O\2401\330\020\024\320\024(\250\001\330\020\024\320\024(\250\001\330\020\024\320\024-\250Q\330\021\025\220Z\230s\240!\330\020\024\220K\230q\330\020\024\320\024&\240a\330\020\024\220O\2401\330\020\024\220O\2401\330\020\024\320\024(\250\001\330\020\024\320\024(\250\001\330\020\024\320\024-\250Q\330\021\025\220Z\230s\240!\330\020\024\220K\230q\330\020\024\320\024&\240a\330\020\024\220O\2401\330\020\024\220O\2401\330\020\024\320\024(\250\001\330\020\024\320\024(\250\001\330\020\024\320\024-\250Q\330\021\025\220Z\230s\240!\330\020\024\220K\230q\330\020\024\320\024&\240a\330\020\024\220O\2401\330\020\024\220O\2401\330\020\024\320\024(\250\001\330\020\024\320\024(\250\001\330\020\024\320\024-\250Q\330\021\025\220Z\230s\240!\330\020\024\220K\230q\330\020\024\320\024&\240a\330\020\024\220O\2401\330\020\024\220O\2401\330\020\024\320\024(\250\001\330\020\024\320\024(\250\001\330\020\024\320\024-\250Q\330\021\025\220Z\230s\320\"=\270S\300\004\300J\310c\320QR\330\020\024\220K\230q\330\020\024\320\024&\240a\330\020\024\220O\2401\330\020\024\220O\2401\330\020\024\320\024(\250\001\330\020\024\320\024(\250\001\330\020\024\320\024-\250Q\330\021\025\220Z\230s\240!\340\020\024\220K\230q\330\020\024\320\024&\240a\330\020\024\220O\2401\330\020\024\220O\2401\330\020\024\320\024(\250\001\330\020\024\320\024(\250\001\330\020\024\320\024-\250Q\330\021\025\220Z\230s\240!\340\020\024\220K\230q\330\020\024\320\024&\240a\330\020\024\220O\2401\330\020\024\220O\2401\330\020\024\320\024(\250\001\330\020\024\320\024(\250\001\330\020\024\320\024-\250Q\330\021\025\220Q\340\020\034\230B\320\0364\260C\260q\270\004\270A\360\006\000\021\027\220i\230q\240\001\330\020\024\220M\240\021\330\020\026\220o\240Q\240a\340\020\023\2204\220s\230!\330\024\030\230\013\2401\330\024\030\320\030*\250!\330\024\030\230\017\240q\330\024\030\230\017\240q\330\024""\030\320\030,\250A\330\024\030\320\030,\250A\330\024\030\320\0301\260\021\340\014\017\210t\2201\330\020\025\220Q\220b\230\t\320!2\260!\330\030*\250$\320.Q\320QU\320UV\330\030.\250d\3202V\320VZ\320Z[\330\0303\2604\260q\330\030\034\230D\240\001\330\0308\270\004\270A\340\014\020\220\013\2301\330\014\020\220\016\230a\330\014\020\320\020-\250]\270$\270e\3004\300{\320R^\320^_\330\014\020\320\020$\240A\330\014\020\220\014\230A\330\014\020\220\013\2304\230~\250Q\330\014\020\320\020/\250q\330\014\020\320\020$\240A\360\010\000\r\023\220$\320\026&\240a\330\014\r\330\020\024\320\024(\250\003\2501\250N\270\"\270C\270q\300\004\300E\310\023\310B\310a\330\023\024\330\020\024\320\024(\250\001\340\014\017\210\230d\240$\320&9\270\021\330\020\035\230R\230|\2504\250v\260R\260t\320;N\310c\320QS\320ST\360\006\000\021\026\220Q\220a\330\020\026\220h\230a\230q";
static const char __pyx_k_BinanceRestApiManager__create_ap[] = "BinanceRestApiManager._create_api_uri";
static const char __pyx_k_BinanceRestApiManager__create_fu[] = "BinanceRestApiManager._create_futures_api_uri";
static const char __pyx_k_BinanceRestApiManager__create_ma[] = "BinanceRestApiManager._create_margin_api_uri";
static const char __pyx_k_BinanceRestApiManager__create_we[] = "BinanceRestApiManager._create_website_uri";
static const char __pyx_k_BinanceRestApiManager__get_earli[] = "BinanceRestApiManager._get_earliest_valid_timestamp";
static const char __pyx_k_BinanceRestApiManager__handle_re[] = "BinanceRestApiManager._handle_response";
static const char __pyx_k_BinanceRestApiManager__init_sess[] = "BinanceRestApiManager._init_session";
static const char __pyx_k_BinanceRestApiManager__order_par[] = "BinanceRestApiManager._order_params";
static const char __pyx_k_BinanceRestApiManager__request_a[] = "BinanceRestApiManager._request_api";
static const char __pyx_k_BinanceRestApiManager__request_f[] = "BinanceRestApiManager._request_futures_api";
static const char __pyx_k_BinanceRestApiManager__request_l[] = "BinanceRestApiManager._request.<locals>.genexpr";
static const char __pyx_k_BinanceRestApiManager__request_m[] = "BinanceRestApiManager._request_margin_api";
static const char __pyx_k_BinanceRestApiManager__request_w[] = "BinanceRestApiManager._request_website";
static const char __pyx_k_BinanceRestApiManager__save_used[] = "BinanceRestApiManager._save_used_weight() - Exception: ";
static const char __pyx_k_BinanceRestApiManager_cancel_all[] = "BinanceRestApiManager.cancel_all_open_orders";
static const char __pyx_k_BinanceRestApiManager_cancel_mar[] = "BinanceRestApiManager.cancel_margin_oco_order";
static const char __pyx_k_BinanceRestApiManager_cancel_ord[] = "BinanceRestApiManager.cancel_order";
static const char __pyx_k_BinanceRestApiManager_change_fix[] = "BinanceRestApiManager.change_fixed_activity_to_daily_position";
static const char __pyx_k_BinanceRestApiManager_create_iso[] = "BinanceRestApiManager.create_isolated_margin_account";
static const char __pyx_k_BinanceRestApiManager_create_mar[] = "BinanceRestApiManager.create_margin_loan";
static const char __pyx_k_BinanceRestApiManager_create_oco[] = "BinanceRestApiManager.create_oco_order";
static const char __pyx_k_BinanceRestApiManager_create_ord[] = "BinanceRestApiManager.create_order";
static const char __pyx_k_BinanceRestApiManager_create_sub[] = "BinanceRestApiManager.create_sub_account_futures_transfer";
static const char __pyx_k_BinanceRestApiManager_create_tes[] = "BinanceRestApiManager.create_test_order";
static const char __pyx_k_BinanceRestApiManager_disable_fa[] = "BinanceRestApiManager.disable_fast_withdraw_switch";
static const char __pyx_k_BinanceRestApiManager_enable_fas[] = "BinanceRestApiManager.enable_fast_withdraw_switch";
static const char __pyx_k_BinanceRestApiManager_enable_sub[] = "BinanceRestApiManager.enable_subaccount_margin";
static const char __pyx_k_BinanceRestApiManager_futures_ac[] = "BinanceRestApiManager.futures_account_transfer";
static const char __pyx_k_BinanceRestApiManager_futures_ag[] = "BinanceRestApiManager.futures_aggregate_trades";
static const char __pyx_k_BinanceRestApiManager_futures_au[] = "BinanceRestApiManager.futures_auto_cancel_all_open_orders";
static const char __pyx_k_BinanceRestApiManager_futures_ca[] = "BinanceRestApiManager.futures_cancel_order";
static const char __pyx_k_BinanceRestApiManager_futures_ch[] = "BinanceRestApiManager.futures_change_leverage";
static const char __pyx_k_BinanceRestApiManager_futures_co[] = "BinanceRestApiManager.futures_commission_rate";
static const char __pyx_k_BinanceRestApiManager_futures_cr[] = "BinanceRestApiManager.futures_create_order";
static const char __pyx_k_BinanceRestApiManager_futures_ex[] = "BinanceRestApiManager.futures_exchange_info";
static const char __pyx_k_BinanceRestApiManager_futures_fu[] = "BinanceRestApiManager.futures_funding_rate";
static const char __pyx_k_BinanceRestApiManager_futures_ge[] = "BinanceRestApiManager.futures_get_order";
static const char __pyx_k_BinanceRestApiManager_futures_hi[] = "BinanceRestApiManager.futures_historical_trades";
static const char __pyx_k_BinanceRestApiManager_futures_in[] = "BinanceRestApiManager.futures_income_history";
static const char __pyx_k_BinanceRestApiManager_futures_kl[] = "BinanceRestApiManager.futures_klines";
static const char __pyx_k_BinanceRestApiManager_futures_le[] = "BinanceRestApiManager.futures_leverage_bracket";
static const char __pyx_k_BinanceRestApiManager_futures_li[] = "BinanceRestApiManager.futures_liquidation_orders";
static const char __pyx_k_BinanceRestApiManager_futures_ma[] = "BinanceRestApiManager.futures_mark_price";
static const char __pyx_k_BinanceRestApiManager_futures_op[] = "BinanceRestApiManager.futures_open_interest";
static const char __pyx_k_BinanceRestApiManager_futures_or[] = "BinanceRestApiManager.futures_order_book";
static const char __pyx_k_BinanceRestApiManager_futures_pi[] = "BinanceRestApiManager.futures_ping";
static const char __pyx_k_BinanceRestApiManager_futures_pl[] = "BinanceRestApiManager.futures_place_batch_order";
static const char __pyx_k_BinanceRestApiManager_futures_po[] = "BinanceRestApiManager.futures_position_margin_history";
static const char __pyx_k_BinanceRestApiManager_futures_re[] = "BinanceRestApiManager.futures_recent_trades";
static const char __pyx_k_BinanceRestApiManager_futures_st[] = "BinanceRestApiManager.futures_stream_get_listen_key";
static const char __pyx_k_BinanceRestApiManager_futures_sy[] = "BinanceRestApiManager.futures_symbol_ticker";
static const char __pyx_k_BinanceRestApiManager_futures_ti[] = "BinanceRestApiManager.futures_time";
static const char __pyx_k_BinanceRestApiManager_get_accoun[] = "BinanceRestApiManager.get_account";
static const char __pyx_k_BinanceRestApiManager_get_aggreg[] = "BinanceRestApiManager.get_aggregate_trades";
static const char __pyx_k_BinanceRestApiManager_get_all_co[] = "BinanceRestApiManager.get_all_coins_info";
static const char __pyx_k_BinanceRestApiManager_get_all_is[] = "BinanceRestApiManager.get_all_isolated_margin_symbols";
static const char __pyx_k_BinanceRestApiManager_get_all_ma[] = "BinanceRestApiManager.get_all_margin_orders";
static const char __pyx_k_BinanceRestApiManager_get_all_or[] = "BinanceRestApiManager.get_all_orders";
static const char __pyx_k_BinanceRestApiManager_get_all_ti[] = "BinanceRestApiManager.get_all_tickers";
static const char __pyx_k_BinanceRestApiManager_get_avg_pr[] = "BinanceRestApiManager.get_avg_price";
static const char __pyx_k_BinanceRestApiManager_get_bnb_bu[] = "BinanceRestApiManager.get_bnb_burn_spot_margin";
static const char __pyx_k_BinanceRestApiManager_get_deposi[] = "BinanceRestApiManager.get_deposit_history";
static const char __pyx_k_BinanceRestApiManager_get_dust_l[] = "BinanceRestApiManager.get_dust_log";
static const char __pyx_k_BinanceRestApiManager_get_exchan[] = "BinanceRestApiManager.get_exchange_info";
static const char __pyx_k_BinanceRestApiManager_get_histor[] = "BinanceRestApiManager.get_historical_klines_generator";
static const char __pyx_k_BinanceRestApiManager_get_isolat[] = "BinanceRestApiManager.get_isolated_margin_account";
static const char __pyx_k_BinanceRestApiManager_get_klines[] = "BinanceRestApiManager.get_klines";
static const char __pyx_k_BinanceRestApiManager_get_latest[] = "BinanceRestApiManager.get_latest_release_info() - Exception: ";
static const char __pyx_k_BinanceRestApiManager_get_lendin[] = "BinanceRestApiManager.get_lending_product_list";
static const char __pyx_k_BinanceRestApiManager_get_margin[] = "BinanceRestApiManager.get_margin_account";
static const char __pyx_k_BinanceRestApiManager_get_max_ma[] = "BinanceRestApiManager.get_max_margin_loan";
static const char __pyx_k_BinanceRestApiManager_get_my_tra[] = "BinanceRestApiManager.get_my_trades";
static const char __pyx_k_BinanceRestApiManager_get_open_i[] = "BinanceRestApiManager.get_open_isolated_margin_orders";
static const char __pyx_k_BinanceRestApiManager_get_open_m[] = "BinanceRestApiManager.get_open_margin_oco_orders";
static const char __pyx_k_BinanceRestApiManager_get_open_o[] = "BinanceRestApiManager.get_open_orders";
static const char __pyx_k_BinanceRestApiManager_get_orderb[] = "BinanceRestApiManager.get_orderbook_tickers";
static const char __pyx_k_BinanceRestApiManager_get_produc[] = "BinanceRestApiManager.get_products";
static const char __pyx_k_BinanceRestApiManager_get_recent[] = "BinanceRestApiManager.get_recent_trades";
static const char __pyx_k_BinanceRestApiManager_get_server[] = "BinanceRestApiManager.get_server_time";
static const char __pyx_k_BinanceRestApiManager_get_sub_ac[] = "BinanceRestApiManager.get_sub_account_list";
static const char __pyx_k_BinanceRestApiManager_get_subacc[] = "BinanceRestApiManager.get_subaccount_deposit_address";
static const char __pyx_k_BinanceRestApiManager_get_symbol[] = "BinanceRestApiManager.get_symbol_info";
static const char __pyx_k_BinanceRestApiManager_get_system[] = "BinanceRestApiManager.get_system_status";
static const char __pyx_k_BinanceRestApiManager_get_ticker[] = "BinanceRestApiManager.get_ticker";
static const char __pyx_k_BinanceRestApiManager_get_univer[] = "BinanceRestApiManager.get_universal_transfer_history";
static const char __pyx_k_BinanceRestApiManager_get_used_w[] = "BinanceRestApiManager.get_used_weight";
static const char __pyx_k_BinanceRestApiManager_get_user_a[] = "BinanceRestApiManager.get_user_agent";
static const char __pyx_k_BinanceRestApiManager_get_versio[] = "BinanceRestApiManager.get_version";
static const char __pyx_k_BinanceRestApiManager_get_withdr[] = "BinanceRestApiManager.get_withdraw_history";
static const char __pyx_k_BinanceRestApiManager_isolated_m[] = "BinanceRestApiManager.isolated_margin_stream_get_listen_key";
static const char __pyx_k_BinanceRestApiManager_make_subac[] = "BinanceRestApiManager.make_subaccount_futures_transfer";
static const char __pyx_k_BinanceRestApiManager_make_unive[] = "BinanceRestApiManager.make_universal_transfer";
static const char __pyx_k_BinanceRestApiManager_margin_str[] = "BinanceRestApiManager.margin_stream_get_listen_key";
static const char __pyx_k_BinanceRestApiManager_new_transf[] = "BinanceRestApiManager.new_transfer_history";
static const char __pyx_k_BinanceRestApiManager_order_limi[] = "BinanceRestApiManager.order_limit";
static const char __pyx_k_BinanceRestApiManager_order_mark[] = "BinanceRestApiManager.order_market";
static const char __pyx_k_BinanceRestApiManager_purchase_l[] = "BinanceRestApiManager.purchase_lending_product";
static const char __pyx_k_BinanceRestApiManager_query_suba[] = "BinanceRestApiManager.query_subaccount_spot_summary";
static const char __pyx_k_BinanceRestApiManager_query_univ[] = "BinanceRestApiManager.query_universal_transfer_history";
static const char __pyx_k_BinanceRestApiManager_redeem_len[] = "BinanceRestApiManager.redeem_lending_product";
static const char __pyx_k_BinanceRestApiManager_repay_marg[] = "BinanceRestApiManager.repay_margin_loan";
static const char __pyx_k_BinanceRestApiManager_stop_manag[] = "BinanceRestApiManager.stop_manager() - Stopping ...";
static const char __pyx_k_BinanceRestApiManager_stream_clo[] = "BinanceRestApiManager.stream_close";
static const char __pyx_k_BinanceRestApiManager_stream_get[] = "BinanceRestApiManager.stream_get_listen_key";
static const char __pyx_k_BinanceRestApiManager_stream_kee[] = "BinanceRestApiManager.stream_keepalive";
static const char __pyx_k_BinanceRestApiManager_toggle_bnb[] = "BinanceRestApiManager.toggle_bnb_burn_spot_margin";
static const char __pyx_k_BinanceRestApiManager_transfer_d[] = "BinanceRestApiManager.transfer_dust";
static const char __pyx_k_BinanceRestApiManager_transfer_h[] = "BinanceRestApiManager.transfer_history";
static const char __pyx_k_BinanceRestApiManager_transfer_i[] = "BinanceRestApiManager.transfer_isolated_margin_to_spot";
static const char __pyx_k_BinanceRestApiManager_transfer_m[] = "BinanceRestApiManager.transfer_margin_to_spot";
static const char __pyx_k_BinanceRestApiManager_transfer_s[] = "BinanceRestApiManager.transfer_spot_to_margin";
static const char __pyx_k_Entering_with_context_of_Binance[] = "Entering with-context of BinanceRestApiManager() ...";
static const char __pyx_k_Leaving_with_context_of_BinanceR[] = "Leaving with-context of BinanceRestApiManager() ...";
static const char __pyx_k_Note_that_Cython_is_deliberately[] = "Note that Cython is deliberately stricter than PEP-484 and rejects subclasses of builtin types. If you need to pass subclasses then set the 'annotation_typing' directive to False.";
static const char __pyx_k_The_parameter_BinanceRestApiMana[] = "The parameter BinanceRestApiManager(tld=`com`) is obsolete, use parameter `exchange` instead! Attention: parameter `exchange` overrules `tld`!! ";
static const char __pyx_k_binance_com_isolated_margin_test[] = "binance.com-isolated_margin-testnet";
static const char __pyx_k_change_fixed_activity_to_daily_p[] = "change_fixed_activity_to_daily_position";
static const char __pyx_k_create_sub_account_futures_trans[] = "create_sub_account_futures_transfer";
static const char __pyx_k_exchange_api_v1_public_asset_ser[] = "exchange-api/v1/public/asset-service/product/get-products";
static const char __pyx_k_futures_auto_cancel_all_open_ord[] = "futures_auto_cancel_all_open_orders";
static const char __pyx_k_futures_coin_cancel_all_open_ord[] = "futures_coin_cancel_all_open_orders";
static const char __pyx_k_futures_coin_change_position_mar[] = "futures_coin_change_position_margin";
static const char __pyx_k_futures_coin_change_position_mod[] = "futures_coin_change_position_mode";
static const char __pyx_k_futures_coin_position_informatio[] = "futures_coin_position_information";
static const char __pyx_k_futures_coin_position_margin_his[] = "futures_coin_position_margin_history";
static const char __pyx_k_futures_coin_stream_get_listen_k[] = "futures_coin_stream_get_listen_key";
static const char __pyx_k_get_lending_daily_redemption_quo[] = "get_lending_daily_redemption_quota";
static const char __pyx_k_get_sub_account_futures_transfer[] = "get_sub_account_futures_transfer_history";
static const char __pyx_k_get_sub_account_transfer_history[] = "get_sub_account_transfer_history";
static const char __pyx_k_get_subaccount_futures_margin_st[] = "get_subaccount_futures_margin_status";
static const char __pyx_k_get_subaccount_futures_positionr[] = "get_subaccount_futures_positionrisk";
static const char __pyx_k_https_api_github_com_repos_LUCIT[] = "https://api.github.com/repos/LUCIT-Systems-and-Development/unicorn-binance-rest-api/releases/latest";
static const char __pyx_k_https_dapi_binance_com_futures_d[] = "https://dapi.binance.com/futures/data";
static const char __pyx_k_https_dapi_binance_us_futures_da[] = "https://dapi.binance.us/futures/data";
static const char __pyx_k_https_dapi_trbinance_com_futures[] = "https://dapi.trbinance.com/futures/data";
static const char __pyx_k_https_fapi_binance_com_futures_d[] = "https://fapi.binance.com/futures/data";
static const char __pyx_k_https_fapi_binance_us_futures_da[] = "https://fapi.binance.us/futures/data";
static const char __pyx_k_https_fapi_trbinance_com_futures[] = "https://fapi.trbinance.com/futures/data";
static const char __pyx_k_https_testnet_binance_vision_api[] = "https://testnet.binance.vision/api";
static const char __pyx_k_isolated_margin_stream_get_liste[] = "isolated_margin_stream_get_listen_key";
static const char __pyx_k_isolated_margin_stream_keepalive[] = "isolated_margin_stream_keepalive";
static const char __pyx_k_lending_daily_userRedemptionQuot[] = "lending/daily/userRedemptionQuota";
static const char __pyx_k_make_subaccount_futures_transfer[] = "make_subaccount_futures_transfer";
static const char __pyx_k_make_subaccount_to_master_transf[] = "make_subaccount_to_master_transfer";
static const char __pyx_k_make_subaccount_to_subaccount_tr[] = "make_subaccount_to_subaccount_transfer";
static const char __pyx_k_query_universal_transfer_history[] = "query_universal_transfer_history";
static const char __pyx_k_start_time_and_last_id_may_not_b[] = "start_time and last_id may not be simultaneously specified.";
static const char __pyx_k_sub_account_futures_accountSumma[] = "sub-account/futures/accountSummary";
static const char __pyx_k_sub_account_futures_internalTran[] = "sub-account/futures/internalTransfer";
static const char __pyx_k_sub_account_futures_positionRisk[] = "sub-account/futures/positionRisk";
static const char __pyx_k_sub_account_margin_accountSummar[] = "sub-account/margin/accountSummary";
static const char __pyx_k_sub_account_sub_transfer_history[] = "sub-account/sub/transfer/history";
static const char __pyx_k_sub_account_transfer_subToMaster[] = "sub-account/transfer/subToMaster";
static const char __pyx_k_sub_account_transfer_subUserHist[] = "sub-account/transfer/subUserHistory";
static const char __pyx_k_transfer_isolated_margin_to_spot[] = "transfer_isolated_margin_to_spot";
static const char __pyx_k_transfer_spot_to_isolated_margin[] = "transfer_spot_to_isolated_margin";
static const char __pyx_k_unicorn_binance_rest_api_manager[] = "unicorn_binance_rest_api.manager";
static const char __pyx_k_BinanceRestApiManager_get_asset_2[] = "BinanceRestApiManager.get_asset_dividend_history";
static const char __pyx_k_BinanceRestApiManager_get_asset_3[] = "BinanceRestApiManager.get_asset_details";
static const char __pyx_k_BinanceRestApiManager_get_order_2[] = "BinanceRestApiManager.get_order";
static const char __pyx_k_BinanceRestApiManager_order_oco_2[] = "BinanceRestApiManager.order_oco_sell";
static const char __pyx_k_https_testnet_binancefuture_com_2[] = "https://testnet.binancefuture.com/futures/data";
static const char __pyx_k_https_testnet_binancefuture_com_3[] = "https://testnet.binancefuture.com/dapi";
static const char __pyx_k_BinanceRestApiManager__create_fu_2[] = "BinanceRestApiManager._create_futures_data_api_uri";
static const char __pyx_k_BinanceRestApiManager__create_fu_3[] = "BinanceRestApiManager._create_futures_coin_api_url";
static const char __pyx_k_BinanceRestApiManager__create_fu_4[] = "BinanceRestApiManager._create_futures_coin_data_api_url";
static const char __pyx_k_BinanceRestApiManager__request_f_2[] = "BinanceRestApiManager._request_futures_data_api";
static const char __pyx_k_BinanceRestApiManager__request_f_3[] = "BinanceRestApiManager._request_futures_coin_api";
static const char __pyx_k_BinanceRestApiManager__request_f_4[] = "BinanceRestApiManager._request_futures_coin_data_api";
static const char __pyx_k_BinanceRestApiManager__save_used_2[] = "BinanceRestApiManager._save_used_weight";
static const char __pyx_k_BinanceRestApiManager_cancel_all_2[] = "BinanceRestApiManager.cancel_all_open_margin_orders";
static const char __pyx_k_BinanceRestApiManager_cancel_mar_2[] = "BinanceRestApiManager.cancel_margin_order";
static const char __pyx_k_BinanceRestApiManager_create_mar_2[] = "BinanceRestApiManager.create_margin_oco_order";
static const char __pyx_k_BinanceRestApiManager_create_mar_3[] = "BinanceRestApiManager.create_margin_order";
static const char __pyx_k_BinanceRestApiManager_enable_sub_2[] = "BinanceRestApiManager.enable_subaccount_futures";
static const char __pyx_k_BinanceRestApiManager_futures_ac_2[] = "BinanceRestApiManager.futures_account_balance";
static const char __pyx_k_BinanceRestApiManager_futures_ac_3[] = "BinanceRestApiManager.futures_account";
static const char __pyx_k_BinanceRestApiManager_futures_ac_4[] = "BinanceRestApiManager.futures_account_trades";
static const char __pyx_k_BinanceRestApiManager_futures_ca_2[] = "BinanceRestApiManager.futures_cancel_all_open_orders";
static const char __pyx_k_BinanceRestApiManager_futures_ca_3[] = "BinanceRestApiManager.futures_cancel_orders";
static const char __pyx_k_BinanceRestApiManager_futures_ch_2[] = "BinanceRestApiManager.futures_change_margin_type";
static const char __pyx_k_BinanceRestApiManager_futures_ch_3[] = "BinanceRestApiManager.futures_change_position_margin";
static const char __pyx_k_BinanceRestApiManager_futures_ch_4[] = "BinanceRestApiManager.futures_change_position_mode";
static const char __pyx_k_BinanceRestApiManager_futures_co_2[] = "BinanceRestApiManager.futures_coin_ping";
static const char __pyx_k_BinanceRestApiManager_futures_co_3[] = "BinanceRestApiManager.futures_coin_time";
static const char __pyx_k_BinanceRestApiManager_futures_co_4[] = "BinanceRestApiManager.futures_coin_exchange_info";
static const char __pyx_k_BinanceRestApiManager_futures_co_5[] = "BinanceRestApiManager.futures_coin_order_book";
static const char __pyx_k_BinanceRestApiManager_futures_co_6[] = "BinanceRestApiManager.futures_coin_recent_trades";
static const char __pyx_k_BinanceRestApiManager_futures_co_7[] = "BinanceRestApiManager.futures_coin_historical_trades";
static const char __pyx_k_BinanceRestApiManager_futures_co_8[] = "BinanceRestApiManager.futures_coin_aggregate_trades";
static const char __pyx_k_BinanceRestApiManager_futures_co_9[] = "BinanceRestApiManager.futures_coin_klines";
static const char __pyx_k_BinanceRestApiManager_futures_ge_2[] = "BinanceRestApiManager.futures_get_open_orders";
static const char __pyx_k_BinanceRestApiManager_futures_ge_3[] = "BinanceRestApiManager.futures_get_all_orders";
static const char __pyx_k_BinanceRestApiManager_futures_ge_4[] = "BinanceRestApiManager.futures_get_position_mode";
static const char __pyx_k_BinanceRestApiManager_futures_op_2[] = "BinanceRestApiManager.futures_open_interest_hist";
static const char __pyx_k_BinanceRestApiManager_futures_or_2[] = "BinanceRestApiManager.futures_orderbook_ticker";
static const char __pyx_k_BinanceRestApiManager_futures_po_2[] = "BinanceRestApiManager.futures_position_information";
static const char __pyx_k_BinanceRestApiManager_futures_st_2[] = "BinanceRestApiManager.futures_stream_keepalive";
static const char __pyx_k_BinanceRestApiManager_futures_st_3[] = "BinanceRestApiManager.futures_stream_close";
static const char __pyx_k_BinanceRestApiManager_futures_ti_2[] = "BinanceRestApiManager.futures_ticker";
static const char __pyx_k_BinanceRestApiManager_get_accoun_2[] = "BinanceRestApiManager.get_account_status";
static const char __pyx_k_BinanceRestApiManager_get_accoun_3[] = "BinanceRestApiManager.get_account_api_trading_status";
static const char __pyx_k_BinanceRestApiManager_get_accoun_4[] = "BinanceRestApiManager.get_account_snapshot";
static const char __pyx_k_BinanceRestApiManager_get_deposi_2[] = "BinanceRestApiManager.get_deposit_address";
static const char __pyx_k_BinanceRestApiManager_get_histor_2[] = "BinanceRestApiManager.get_historical_trades";
static const char __pyx_k_BinanceRestApiManager_get_histor_3[] = "BinanceRestApiManager.get_historical_klines";
static const char __pyx_k_BinanceRestApiManager_get_isolat_2[] = "BinanceRestApiManager.get_isolated_margin_symbol";
static const char __pyx_k_BinanceRestApiManager_get_latest_2[] = "BinanceRestApiManager.get_latest_version";
static const char __pyx_k_BinanceRestApiManager_get_latest_3[] = "BinanceRestApiManager.get_latest_release_info";
static const char __pyx_k_BinanceRestApiManager_get_lendin_2[] = "BinanceRestApiManager.get_lending_daily_quota_left";
static const char __pyx_k_BinanceRestApiManager_get_lendin_3[] = "BinanceRestApiManager.get_lending_daily_redemption_quota";
static const char __pyx_k_BinanceRestApiManager_get_lendin_4[] = "BinanceRestApiManager.get_lending_position";
static const char __pyx_k_BinanceRestApiManager_get_lendin_5[] = "BinanceRestApiManager.get_lending_account";
static const char __pyx_k_BinanceRestApiManager_get_lendin_6[] = "BinanceRestApiManager.get_lending_purchase_history";
static const char __pyx_k_BinanceRestApiManager_get_lendin_7[] = "BinanceRestApiManager.get_lending_redemption_history";
static const char __pyx_k_BinanceRestApiManager_get_lendin_8[] = "BinanceRestApiManager.get_lending_interest_history";
static const char __pyx_k_BinanceRestApiManager_get_margin_2[] = "BinanceRestApiManager.get_margin_asset";
static const char __pyx_k_BinanceRestApiManager_get_margin_3[] = "BinanceRestApiManager.get_margin_symbol";
static const char __pyx_k_BinanceRestApiManager_get_margin_4[] = "BinanceRestApiManager.get_margin_price_index";
static const char __pyx_k_BinanceRestApiManager_get_margin_5[] = "BinanceRestApiManager.get_margin_oco_order";
static const char __pyx_k_BinanceRestApiManager_get_margin_6[] = "BinanceRestApiManager.get_margin_loan_details";
static const char __pyx_k_BinanceRestApiManager_get_margin_7[] = "BinanceRestApiManager.get_margin_repay_details";
static const char __pyx_k_BinanceRestApiManager_get_margin_8[] = "BinanceRestApiManager.get_margin_order";
static const char __pyx_k_BinanceRestApiManager_get_margin_9[] = "BinanceRestApiManager.get_margin_trades";
static const char __pyx_k_BinanceRestApiManager_get_max_ma_2[] = "BinanceRestApiManager.get_max_margin_transfer";
static const char __pyx_k_BinanceRestApiManager_get_open_m_2[] = "BinanceRestApiManager.get_open_margin_orders";
static const char __pyx_k_BinanceRestApiManager_get_orderb_2[] = "BinanceRestApiManager.get_orderbook_ticker";
static const char __pyx_k_BinanceRestApiManager_get_sub_ac_2[] = "BinanceRestApiManager.get_sub_account_transfer_history";
static const char __pyx_k_BinanceRestApiManager_get_sub_ac_3[] = "BinanceRestApiManager.get_sub_account_futures_transfer_history";
static const char __pyx_k_BinanceRestApiManager_get_sub_ac_4[] = "BinanceRestApiManager.get_sub_account_assets";
static const char __pyx_k_BinanceRestApiManager_get_subacc_2[] = "BinanceRestApiManager.get_subaccount_deposit_history";
static const char __pyx_k_BinanceRestApiManager_get_subacc_3[] = "BinanceRestApiManager.get_subaccount_futures_margin_status";
static const char __pyx_k_BinanceRestApiManager_get_subacc_4[] = "BinanceRestApiManager.get_subaccount_margin_details";
static const char __pyx_k_BinanceRestApiManager_get_subacc_5[] = "BinanceRestApiManager.get_subaccount_margin_summary";
static const char __pyx_k_BinanceRestApiManager_get_subacc_6[] = "BinanceRestApiManager.get_subaccount_futures_details";
static const char __pyx_k_BinanceRestApiManager_get_subacc_7[] = "BinanceRestApiManager.get_subaccount_futures_summary";
static const char __pyx_k_BinanceRestApiManager_get_subacc_8[] = "BinanceRestApiManager.get_subaccount_futures_positionrisk";
static const char __pyx_k_BinanceRestApiManager_get_subacc_9[] = "BinanceRestApiManager.get_subaccount_transfer_history";
static const char __pyx_k_BinanceRestApiManager_get_symbol_2[] = "BinanceRestApiManager.get_symbol_ticker";
static const char __pyx_k_BinanceRestApiManager_get_withdr_2[] = "BinanceRestApiManager.get_withdraw_history_id";
static const char __pyx_k_BinanceRestApiManager_isolated_m_2[] = "BinanceRestApiManager.isolated_margin_stream_keepalive";
static const char __pyx_k_BinanceRestApiManager_isolated_m_3[] = "BinanceRestApiManager.isolated_margin_stream_close";
static const char __pyx_k_BinanceRestApiManager_make_subac_2[] = "BinanceRestApiManager.make_subaccount_margin_transfer";
static const char __pyx_k_BinanceRestApiManager_make_subac_3[] = "BinanceRestApiManager.make_subaccount_to_subaccount_transfer";
static const char __pyx_k_BinanceRestApiManager_make_subac_4[] = "BinanceRestApiManager.make_subaccount_to_master_transfer";
static const char __pyx_k_BinanceRestApiManager_margin_str_2[] = "BinanceRestApiManager.margin_stream_keepalive";
static const char __pyx_k_BinanceRestApiManager_margin_str_3[] = "BinanceRestApiManager.margin_stream_close";
static const char __pyx_k_BinanceRestApiManager_order_limi_2[] = "BinanceRestApiManager.order_limit_buy";
static const char __pyx_k_BinanceRestApiManager_order_limi_3[] = "BinanceRestApiManager.order_limit_sell";
static const char __pyx_k_BinanceRestApiManager_order_mark_2[] = "BinanceRestApiManager.order_market_buy";
static const char __pyx_k_BinanceRestApiManager_order_mark_3[] = "BinanceRestApiManager.order_market_sell";
static const char __pyx_k_BinanceRestApiManager_stop_manag_2[] = "BinanceRestApiManager.stop_manager() - AttributeError: ";
static const char __pyx_k_BinanceRestApiManager_stop_manag_3[] = "BinanceRestApiManager.stop_manager";
static const char __pyx_k_BinanceRestApiManager_transfer_s_2[] = "BinanceRestApiManager.transfer_spot_to_isolated_margin";
static const char __pyx_k_unicorn_binance_rest_api_manager_2[] = "unicorn_binance_rest_api/manager.py";
static const char __pyx_k_BinanceRestApiManager_futures_co_10[] = "BinanceRestApiManager.futures_coin_continous_klines";
static const char __pyx_k_BinanceRestApiManager_futures_co_11[] = "BinanceRestApiManager.futures_coin_index_price_klines";
static const char __pyx_k_BinanceRestApiManager_futures_co_12[] = "BinanceRestApiManager.futures_coin_mark_price_klines";
static const char __pyx_k_BinanceRestApiManager_futures_co_13[] = "BinanceRestApiManager.futures_coin_mark_price";
static const char __pyx_k_BinanceRestApiManager_futures_co_14[] = "BinanceRestApiManager.futures_coin_funding_rate";
static const char __pyx_k_BinanceRestApiManager_futures_co_15[] = "BinanceRestApiManager.futures_coin_ticker";
static const char __pyx_k_BinanceRestApiManager_futures_co_16[] = "BinanceRestApiManager.futures_coin_symbol_ticker";
static const char __pyx_k_BinanceRestApiManager_futures_co_17[] = "BinanceRestApiManager.futures_coin_orderbook_ticker";
static const char __pyx_k_BinanceRestApiManager_futures_co_18[] = "BinanceRestApiManager.futures_coin_liquidation_orders";
static const char __pyx_k_BinanceRestApiManager_futures_co_19[] = "BinanceRestApiManager.futures_coin_open_interest";
static const char __pyx_k_BinanceRestApiManager_futures_co_20[] = "BinanceRestApiManager.futures_coin_open_interest_hist";
static const char __pyx_k_BinanceRestApiManager_futures_co_21[] = "BinanceRestApiManager.futures_coin_leverage_bracket";
static const char __pyx_k_BinanceRestApiManager_futures_co_22[] = "BinanceRestApiManager.futures_coin_create_order";
static const char __pyx_k_BinanceRestApiManager_futures_co_23[] = "BinanceRestApiManager.futures_coin_place_batch_order";
static const char __pyx_k_BinanceRestApiManager_futures_co_24[] = "BinanceRestApiManager.futures_coin_get_order";
static const char __pyx_k_BinanceRestApiManager_futures_co_25[] = "BinanceRestApiManager.futures_coin_get_open_orders";
static const char __pyx_k_BinanceRestApiManager_futures_co_26[] = "BinanceRestApiManager.futures_coin_get_all_orders";
static const char __pyx_k_BinanceRestApiManager_futures_co_27[] = "BinanceRestApiManager.futures_coin_cancel_order";
static const char __pyx_k_BinanceRestApiManager_futures_co_28[] = "BinanceRestApiManager.futures_coin_cancel_all_open_orders";
static const char __pyx_k_BinanceRestApiManager_futures_co_29[] = "BinanceRestApiManager.futures_coin_cancel_orders";
static const char __pyx_k_BinanceRestApiManager_futures_co_30[] = "BinanceRestApiManager.futures_coin_account_balance";
static const char __pyx_k_BinanceRestApiManager_futures_co_31[] = "BinanceRestApiManager.futures_coin_account";
static const char __pyx_k_BinanceRestApiManager_futures_co_32[] = "BinanceRestApiManager.futures_coin_change_leverage";
static const char __pyx_k_BinanceRestApiManager_futures_co_33[] = "BinanceRestApiManager.futures_coin_change_margin_type";
static const char __pyx_k_BinanceRestApiManager_futures_co_34[] = "BinanceRestApiManager.futures_coin_change_position_margin";
static const char __pyx_k_BinanceRestApiManager_futures_co_35[] = "BinanceRestApiManager.futures_coin_position_margin_history";
static const char __pyx_k_BinanceRestApiManager_futures_co_36[] = "BinanceRestApiManager.futures_coin_position_information";
static const char __pyx_k_BinanceRestApiManager_futures_co_37[] = "BinanceRestApiManager.futures_coin_account_trades";
static const char __pyx_k_BinanceRestApiManager_futures_co_38[] = "BinanceRestApiManager.futures_coin_income_history";
static const char __pyx_k_BinanceRestApiManager_futures_co_39[] = "BinanceRestApiManager.futures_coin_change_position_mode";
static const char __pyx_k_BinanceRestApiManager_futures_co_40[] = "BinanceRestApiManager.futures_coin_get_position_mode";
static const char __pyx_k_BinanceRestApiManager_futures_co_41[] = "BinanceRestApiManager.futures_coin_stream_get_listen_key";
static const char __pyx_k_BinanceRestApiManager_futures_co_42[] = "BinanceRestApiManager.futures_coin_stream_keepalive";
static const char __pyx_k_BinanceRestApiManager_futures_co_43[] = "BinanceRestApiManager.futures_coin_stream_close";
/* #### Code section: decls ### */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager___init__(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_api_key, PyObject *__pyx_v_api_secret, PyObject *__pyx_v_requests_params, PyObject *__pyx_v_tld, PyObject *__pyx_v_warn_on_update, PyObject *__pyx_v_exchange, PyObject *__pyx_v_disable_colorama, PyObject *__pyx_v_debug, PyObject *__pyx_v_socks5_proxy_server, PyObject *__pyx_v_socks5_proxy_user, PyObject *__pyx_v_socks5_proxy_pass, PyObject *__pyx_v_socks5_proxy_ssl_verification); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_2__enter__(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_4__exit__(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_exc_type, PyObject *__pyx_v_exc_value, PyObject *__pyx_v_error_traceback); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_6_init_session(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager___defaults__(CYTHON_UNUSED PyObject *__pyx_self); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_8_create_api_uri(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_path, PyObject *__pyx_v_signed, PyObject *__pyx_v_version); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_2__defaults__(CYTHON_UNUSED PyObject *__pyx_self); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_10_create_margin_api_uri(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_path, PyObject *__pyx_v_version); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_12_create_website_uri(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_path); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_14_create_futures_api_uri(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_path, PyObject *__pyx_v_version); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_16_create_futures_data_api_uri(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_path); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_18_create_futures_coin_api_url(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_path, PyObject *__pyx_v_version); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_20_create_futures_coin_data_api_url(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_path, PyObject *__pyx_v_version); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_22_generate_signature(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_data); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_24_order_params(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_data); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_8_request_genexpr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_genexpr_arg_0); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_26_request(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_method, PyObject *__pyx_v_uri, PyObject *__pyx_v_signed, PyObject *__pyx_v_force_params, PyObject *__pyx_v_throw_exception, PyObject *__pyx_v_kwargs); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_4__defaults__(CYTHON_UNUSED PyObject *__pyx_self); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_28_request_api(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_method, PyObject *__pyx_v_path, PyObject *__pyx_v_signed, PyObject *__pyx_v_version, PyObject *__pyx_v_throw_exception, PyObject *__pyx_v_kwargs); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_6__defaults__(CYTHON_UNUSED PyObject *__pyx_self); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_30_request_margin_api(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_method, PyObject *__pyx_v_path, PyObject *__pyx_v_signed, PyObject *__pyx_v_version, PyObject *__pyx_v_throw_exception, PyObject *__pyx_v_kwargs); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_32_request_website(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_method, PyObject *__pyx_v_path, PyObject *__pyx_v_signed, PyObject *__pyx_v_throw_exception, PyObject *__pyx_v_kwargs); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_34_request_futures_api(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_method, PyObject *__pyx_v_path, PyObject *__pyx_v_signed, PyObject *__pyx_v_version, PyObject *__pyx_v_throw_exception, PyObject *__pyx_v_kwargs); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_36_request_futures_data_api(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_method, PyObject *__pyx_v_path, PyObject *__pyx_v_signed, PyObject *__pyx_v_throw_exception, PyObject *__pyx_v_kwargs); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_38_request_futures_coin_api(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_method, PyObject *__pyx_v_path, PyObject *__pyx_v_signed, PyObject *__pyx_v_version, PyObject *__pyx_v_throw_exception, PyObject *__pyx_v_kwargs); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_40_request_futures_coin_data_api(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_method, PyObject *__pyx_v_path, PyObject *__pyx_v_signed, PyObject *__pyx_v_version, PyObject *__pyx_v_throw_exception, PyObject *__pyx_v_kwargs); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_42_save_used_weight(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_44_handle_response(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_throw_exception); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_8__defaults__(CYTHON_UNUSED PyObject *__pyx_self); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_46_get(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_path, PyObject *__pyx_v_signed, PyObject *__pyx_v_version, PyObject *__pyx_v_kwargs); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_10__defaults__(CYTHON_UNUSED PyObject *__pyx_self); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_48_post(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_path, PyObject *__pyx_v_signed, PyObject *__pyx_v_version, PyObject *__pyx_v_throw_exception, PyObject *__pyx_v_kwargs); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_12__defaults__(CYTHON_UNUSED PyObject *__pyx_self); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_50_put(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_path, PyObject *__pyx_v_signed, PyObject *__pyx_v_version, PyObject *__pyx_v_kwargs); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_14__defaults__(CYTHON_UNUSED PyObject *__pyx_self); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_52_delete(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_path, PyObject *__pyx_v_signed, PyObject *__pyx_v_version, PyObject *__pyx_v_kwargs); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_54is_update_availabe(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_56get_version(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_58get_latest_version(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_60get_latest_release_info(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_62get_user_agent(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_64get_products(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_66get_exchange_info(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_68get_symbol_info(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_symbol); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_70ping(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_72get_server_time(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_74get_all_tickers(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_76get_orderbook_tickers(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_78get_order_book(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_80get_recent_trades(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_82get_historical_trades(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_84get_aggregate_trades(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_86aggregate_trade_iter(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_symbol, PyObject *__pyx_v_start_str, PyObject *__pyx_v_last_id); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_89get_klines(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_91_get_earliest_valid_timestamp(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_symbol, PyObject *__pyx_v_interval); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_93get_historical_klines(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_symbol, PyObject *__pyx_v_interval, PyObject *__pyx_v_start_str, PyObject *__pyx_v_end_str, PyObject *__pyx_v_limit); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_95get_historical_klines_generator(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_symbol, PyObject *__pyx_v_interval, PyObject *__pyx_v_start_str, PyObject *__pyx_v_end_str); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_98get_avg_price(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_100get_ticker(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_102get_symbol_ticker(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_104get_orderbook_ticker(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_106create_order(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_16__defaults__(CYTHON_UNUSED PyObject *__pyx_self); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_108order_limit(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_timeInForce, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_18__defaults__(CYTHON_UNUSED PyObject *__pyx_self); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_110order_limit_buy(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_timeInForce, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_20__defaults__(CYTHON_UNUSED PyObject *__pyx_self); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_112order_limit_sell(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_timeInForce, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_114order_market(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_116order_market_buy(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_118order_market_sell(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_120create_oco_order(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_122order_oco_buy(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_124order_oco_sell(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_126create_test_order(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_128get_order(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_130get_all_orders(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_132cancel_all_open_orders(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_134cancel_all_open_margin_orders(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_136cancel_order(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_138get_open_orders(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_140get_account(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_142get_asset_balance(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_asset, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_144get_my_trades(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_146get_system_status(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_148get_account_status(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_150get_account_api_trading_status(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_152get_dust_log(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_154transfer_dust(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_156get_asset_dividend_history(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_158query_universal_transfer_history(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_160get_trade_fee(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_162get_asset_details(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_164withdraw(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_166get_deposit_history(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_168get_withdraw_history(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_170get_withdraw_history_id(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_withdraw_id, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_172get_deposit_address(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_174stream_get_listen_key(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_output, PyObject *__pyx_v_throw_exception, PyObject *__pyx_v_kwargs); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_176stream_keepalive(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_listenKey, PyObject *__pyx_v_throw_exception, PyObject *__pyx_v_kwargs); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_178stream_close(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_listenKey, PyObject *__pyx_v_throw_exception, PyObject *__pyx_v_kwargs); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_180get_margin_account(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_182get_isolated_margin_account(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_184get_margin_asset(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_186get_margin_symbol(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_188create_isolated_margin_account(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_190get_isolated_margin_symbol(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_192get_all_isolated_margin_symbols(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_194toggle_bnb_burn_spot_margin(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_196get_bnb_burn_spot_margin(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_198get_margin_price_index(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_200transfer_margin_to_spot(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_202transfer_spot_to_margin(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_204transfer_isolated_margin_to_spot(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_206transfer_spot_to_isolated_margin(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_208create_margin_loan(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_210repay_margin_loan(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_212create_margin_oco_order(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_214cancel_margin_oco_order(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_216get_margin_oco_order(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_218get_open_margin_oco_orders(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_220create_margin_order(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_222cancel_margin_order(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_224get_margin_loan_details(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_226get_margin_repay_details(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_228get_margin_order(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_230get_open_margin_orders(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_232get_open_isolated_margin_orders(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_234get_all_margin_orders(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_236get_margin_trades(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_238get_max_margin_loan(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_240get_max_margin_transfer(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_242margin_stream_get_listen_key(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_output, PyObject *__pyx_v_throw_exception, PyObject *__pyx_v_kwargs); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_244margin_stream_keepalive(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_listenKey, PyObject *__pyx_v_throw_exception, PyObject *__pyx_v_kwargs); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_246margin_stream_close(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_listenKey, PyObject *__pyx_v_throw_exception, PyObject *__pyx_v_kwargs); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_248isolated_margin_stream_get_listen_key(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_symbol, PyObject *__pyx_v_output, PyObject *__pyx_v_throw_exception, PyObject *__pyx_v_kwargs); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_250isolated_margin_stream_keepalive(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_symbol, PyObject *__pyx_v_listenKey, PyObject *__pyx_v_throw_exception, PyObject *__pyx_v_kwargs); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_252isolated_margin_stream_close(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_symbol, PyObject *__pyx_v_listenKey, PyObject *__pyx_v_throw_exception, PyObject *__pyx_v_kwargs); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_254get_lending_product_list(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_256get_lending_daily_quota_left(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_258purchase_lending_product(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_260get_lending_daily_redemption_quota(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_262redeem_lending_product(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_264get_lending_position(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_266get_fixed_activity_project_list(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_268get_lending_account(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_270get_lending_purchase_history(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_272get_lending_redemption_history(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_274get_lending_interest_history(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_276change_fixed_activity_to_daily_position(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_278get_sub_account_list(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_280get_sub_account_transfer_history(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_282get_sub_account_futures_transfer_history(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_284create_sub_account_futures_transfer(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_286get_sub_account_assets(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_288query_subaccount_spot_summary(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_290get_subaccount_deposit_address(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_292get_subaccount_deposit_history(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_294get_subaccount_futures_margin_status(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_296enable_subaccount_margin(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_298get_subaccount_margin_details(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_300get_subaccount_margin_summary(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_302enable_subaccount_futures(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_304get_subaccount_futures_details(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_306get_subaccount_futures_summary(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_308get_subaccount_futures_positionrisk(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_310make_subaccount_futures_transfer(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_312make_subaccount_margin_transfer(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_314make_subaccount_to_subaccount_transfer(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_316make_subaccount_to_master_transfer(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_318get_subaccount_transfer_history(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_320make_universal_transfer(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_322get_universal_transfer_history(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_324get_used_weight(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_cached, PyObject *__pyx_v_cached_timeout); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_326futures_ping(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_328futures_time(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_330futures_exchange_info(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_332futures_order_book(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_334futures_recent_trades(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_336futures_historical_trades(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_338futures_aggregate_trades(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_340futures_klines(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_342futures_mark_price(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_344futures_funding_rate(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_346futures_ticker(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_348futures_symbol_ticker(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_350futures_orderbook_ticker(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_352futures_liquidation_orders(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_354futures_open_interest(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_356futures_open_interest_hist(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_358futures_leverage_bracket(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_360futures_account_transfer(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_362futures_auto_cancel_all_open_orders(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_364futures_commission_rate(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_366transfer_history(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_368futures_create_order(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_370futures_place_batch_order(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_372futures_get_order(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_374futures_get_open_orders(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_376futures_get_all_orders(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_378futures_cancel_order(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_380futures_cancel_all_open_orders(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_382futures_cancel_orders(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_384futures_account_balance(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_386futures_account(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_388futures_change_leverage(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_390futures_change_margin_type(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_392futures_change_position_margin(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_394futures_position_margin_history(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_396futures_position_information(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_398futures_account_trades(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_400futures_income_history(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_402futures_change_position_mode(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_404futures_get_position_mode(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_406futures_stream_get_listen_key(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_output, PyObject *__pyx_v_throw_exception, PyObject *__pyx_v_kwargs); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_408futures_stream_keepalive(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_listenKey, PyObject *__pyx_v_throw_exception, PyObject *__pyx_v_kwargs); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_410futures_stream_close(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_listenKey, PyObject *__pyx_v_throw_exception, PyObject *__pyx_v_kwargs); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_412futures_coin_ping(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_414futures_coin_time(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_416futures_coin_exchange_info(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_418futures_coin_order_book(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_420futures_coin_recent_trades(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_422futures_coin_historical_trades(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_424futures_coin_aggregate_trades(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_426futures_coin_klines(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_428futures_coin_continous_klines(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_430futures_coin_index_price_klines(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_432futures_coin_mark_price_klines(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_434futures_coin_mark_price(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_436futures_coin_funding_rate(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_438futures_coin_ticker(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_440futures_coin_symbol_ticker(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_442futures_coin_orderbook_ticker(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_444futures_coin_liquidation_orders(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_446futures_coin_open_interest(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_448futures_coin_open_interest_hist(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_450futures_coin_leverage_bracket(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_452new_transfer_history(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_454universal_transfer(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_456futures_coin_create_order(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_458futures_coin_place_batch_order(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_460futures_coin_get_order(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_462futures_coin_get_open_orders(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_464futures_coin_get_all_orders(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_466futures_coin_cancel_order(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_468futures_coin_cancel_all_open_orders(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_470futures_coin_cancel_orders(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_472futures_coin_account_balance(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_474futures_coin_account(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_476futures_coin_change_leverage(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_478futures_coin_change_margin_type(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_480futures_coin_change_position_margin(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_482futures_coin_position_margin_history(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_484futures_coin_position_information(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_486futures_coin_account_trades(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_488futures_coin_income_history(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_490futures_coin_change_position_mode(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_492futures_coin_get_position_mode(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_494futures_coin_stream_get_listen_key(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_output, PyObject *__pyx_v_throw_exception, PyObject *__pyx_v_kwargs); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_496futures_coin_stream_keepalive(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_listenKey, PyObject *__pyx_v_throw_exception, PyObject *__pyx_v_kwargs); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_498futures_coin_stream_close(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_listenKey, PyObject *__pyx_v_throw_exception, PyObject *__pyx_v_kwargs); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_500get_all_coins_info(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_502get_account_snapshot(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_504disable_fast_withdraw_switch(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_506enable_fast_withdraw_switch(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params); /* proto */
static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_508stop_manager(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self); /* proto */
static PyObject *__pyx_tp_new_24unicorn_binance_rest_api_7manager___pyx_defaults(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/
static PyObject *__pyx_tp_new_24unicorn_binance_rest_api_7manager___pyx_scope_struct__genexpr(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/
static PyObject *__pyx_tp_new_24unicorn_binance_rest_api_7manager___pyx_scope_struct_1_aggregate_trade_iter(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/
static PyObject *__pyx_tp_new_24unicorn_binance_rest_api_7manager___pyx_scope_struct_2_get_historical_klines_generator(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/
/* #### Code section: late_includes ### */
/* #### Code section: module_state ### */
/* SmallCodeConfig */
#ifndef CYTHON_SMALL_CODE
#if defined(__clang__)
    #define CYTHON_SMALL_CODE
#elif defined(__GNUC__) && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 3))
    #define CYTHON_SMALL_CODE __attribute__((cold))
#else
    #define CYTHON_SMALL_CODE
#endif
#endif

typedef struct {
  PyObject *__pyx_d;
  PyObject *__pyx_b;
  PyObject *__pyx_cython_runtime;
  PyObject *__pyx_empty_tuple;
  PyObject *__pyx_empty_bytes;
  PyObject *__pyx_empty_unicode;
  #ifdef __Pyx_CyFunction_USED
  PyTypeObject *__pyx_CyFunctionType;
  #endif
  #ifdef __Pyx_FusedFunction_USED
  PyTypeObject *__pyx_FusedFunctionType;
  #endif
  #ifdef __Pyx_Generator_USED
  PyTypeObject *__pyx_GeneratorType;
  #endif
  #ifdef __Pyx_IterableCoroutine_USED
  PyTypeObject *__pyx_IterableCoroutineType;
  #endif
  #ifdef __Pyx_Coroutine_USED
  PyTypeObject *__pyx_CoroutineAwaitType;
  #endif
  #ifdef __Pyx_Coroutine_USED
  PyTypeObject *__pyx_CoroutineType;
  #endif
  PyObject *__pyx_type_24unicorn_binance_rest_api_7manager___pyx_defaults;
  PyObject *__pyx_type_24unicorn_binance_rest_api_7manager___pyx_scope_struct__genexpr;
  PyObject *__pyx_type_24unicorn_binance_rest_api_7manager___pyx_scope_struct_1_aggregate_trade_iter;
  PyObject *__pyx_type_24unicorn_binance_rest_api_7manager___pyx_scope_struct_2_get_historical_klines_generator;
  PyTypeObject *__pyx_ptype_24unicorn_binance_rest_api_7manager___pyx_defaults;
  PyTypeObject *__pyx_ptype_24unicorn_binance_rest_api_7manager___pyx_scope_struct__genexpr;
  PyTypeObject *__pyx_ptype_24unicorn_binance_rest_api_7manager___pyx_scope_struct_1_aggregate_trade_iter;
  PyTypeObject *__pyx_ptype_24unicorn_binance_rest_api_7manager___pyx_scope_struct_2_get_historical_klines_generator;
  __Pyx_CachedCFunction __pyx_umethod_PyDict_Type_get;
  __Pyx_CachedCFunction __pyx_umethod_PyDict_Type_pop;
  __Pyx_CachedCFunction __pyx_umethod_PyDict_Type__update;
  PyObject *__pyx_slice[3];
  PyObject *__pyx_tuple[167];
  PyObject *__pyx_codeobj_tab[255];
  PyObject *__pyx_string_tab[1092];
  PyObject *__pyx_int_0;
  PyObject *__pyx_int_1;
  PyObject *__pyx_int_2;
  PyObject *__pyx_int_3;
  PyObject *__pyx_int_10;
  PyObject *__pyx_int_12;
  PyObject *__pyx_int_200;
  PyObject *__pyx_int_300;
  PyObject *__pyx_int_500;
  PyObject *__pyx_int_1000;
  PyObject *__pyx_int_3600;
  PyObject *__pyx_int_3600000;
  PyObject *__pyx_int_neg_4;
/* #### Code section: module_state_contents ### */

#if CYTHON_USE_FREELISTS
struct __pyx_obj_24unicorn_binance_rest_api_7manager___pyx_scope_struct__genexpr *__pyx_freelist_24unicorn_binance_rest_api_7manager___pyx_scope_struct__genexpr[8];
int __pyx_freecount_24unicorn_binance_rest_api_7manager___pyx_scope_struct__genexpr;
#endif

#if CYTHON_USE_FREELISTS
struct __pyx_obj_24unicorn_binance_rest_api_7manager___pyx_scope_struct_1_aggregate_trade_iter *__pyx_freelist_24unicorn_binance_rest_api_7manager___pyx_scope_struct_1_aggregate_trade_iter[8];
int __pyx_freecount_24unicorn_binance_rest_api_7manager___pyx_scope_struct_1_aggregate_trade_iter;
#endif

#if CYTHON_USE_FREELISTS
struct __pyx_obj_24unicorn_binance_rest_api_7manager___pyx_scope_struct_2_get_historical_klines_generator *__pyx_freelist_24unicorn_binance_rest_api_7manager___pyx_scope_struct_2_get_historical_klines_generator[8];
int __pyx_freecount_24unicorn_binance_rest_api_7manager___pyx_scope_struct_2_get_historical_klines_generator;
#endif
/* CommonTypesMetaclass.module_state_decls */
PyTypeObject *__pyx_CommonTypesMetaclassType;

/* CachedMethodType.module_state_decls */
#if CYTHON_COMPILING_IN_LIMITED_API
PyObject *__Pyx_CachedMethodType;
#endif

/* CodeObjectCache.module_state_decls */
struct __Pyx_CodeObjectCache __pyx_code_cache;

/* IterNextPlain.module_state_decls */
#if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX < 0x030A0000
PyObject *__Pyx_GetBuiltinNext_LimitedAPI_cache;
#endif

/* #### Code section: module_state_end ### */
} __pyx_mstatetype;

#if CYTHON_USE_MODULE_STATE
#ifdef __cplusplus
namespace {
extern struct PyModuleDef __pyx_moduledef;
} /* anonymous namespace */
#else
static struct PyModuleDef __pyx_moduledef;
#endif

#define __pyx_mstate_global (__Pyx_PyModule_GetState(__Pyx_State_FindModule(&__pyx_moduledef)))

#define __pyx_m (__Pyx_State_FindModule(&__pyx_moduledef))
#else
static __pyx_mstatetype __pyx_mstate_global_static =
#ifdef __cplusplus
    {};
#else
    {0};
#endif
static __pyx_mstatetype * const __pyx_mstate_global = &__pyx_mstate_global_static;
#endif
/* #### Code section: constant_name_defines ### */
#define __pyx_kp_u_ __pyx_string_tab[0]
#define __pyx_kp_u_12h __pyx_string_tab[1]
#define __pyx_kp_u_15m __pyx_string_tab[2]
#define __pyx_kp_u_1M __pyx_string_tab[3]
#define __pyx_kp_u_1d __pyx_string_tab[4]
#define __pyx_kp_u_1h __pyx_string_tab[5]
#define __pyx_kp_u_1m __pyx_string_tab[6]
#define __pyx_kp_u_1s __pyx_string_tab[7]
#define __pyx_kp_u_1w __pyx_string_tab[8]
#define __pyx_kp_u_22 __pyx_string_tab[9]
#define __pyx_kp_u_27 __pyx_string_tab[10]
#define __pyx_kp_u_2_8_0 __pyx_string_tab[11]
#define __pyx_kp_u_2h __pyx_string_tab[12]
#define __pyx_kp_u_30m __pyx_string_tab[13]
#define __pyx_kp_u_3d __pyx_string_tab[14]
#define __pyx_kp_u_3m __pyx_string_tab[15]
#define __pyx_kp_u_4h __pyx_string_tab[16]
#define __pyx_kp_u_5m __pyx_string_tab[17]
#define __pyx_kp_u_6h __pyx_string_tab[18]
#define __pyx_kp_u_8h __pyx_string_tab[19]
#define __pyx_n_u_ACK __pyx_string_tab[20]
#define __pyx_n_u_AGG_BEST_MATCH __pyx_string_tab[21]
#define __pyx_n_u_AGG_BUYER_MAKES __pyx_string_tab[22]
#define __pyx_n_u_AGG_FIRST_TRADE_ID __pyx_string_tab[23]
#define __pyx_n_u_AGG_ID __pyx_string_tab[24]
#define __pyx_n_u_AGG_LAST_TRADE_ID __pyx_string_tab[25]
#define __pyx_n_u_AGG_PRICE __pyx_string_tab[26]
#define __pyx_n_u_AGG_QUANTITY __pyx_string_tab[27]
#define __pyx_n_u_AGG_TIME __pyx_string_tab[28]
#define __pyx_n_u_API_KEY __pyx_string_tab[29]
#define __pyx_n_u_API_SECRET __pyx_string_tab[30]
#define __pyx_n_u_API_URL __pyx_string_tab[31]
#define __pyx_kp_u_A_Python_SDK_to_use_the_Binance __pyx_string_tab[32]
#define __pyx_n_u_Accept __pyx_string_tab[33]
#define __pyx_n_u_AlreadyStoppedError __pyx_string_tab[34]
#define __pyx_kp_u_An_exception_occurred __pyx_string_tab[35]
#define __pyx_n_u_AttributeError __pyx_string_tab[36]
#define __pyx_n_u_BUY __pyx_string_tab[37]
#define __pyx_n_u_BinanceAPIException __pyx_string_tab[38]
#define __pyx_n_u_BinanceRequestException __pyx_string_tab[39]
#define __pyx_n_u_BinanceRestApiManager __pyx_string_tab[40]
#define __pyx_n_u_BinanceRestApiManager___enter __pyx_string_tab[41]
#define __pyx_n_u_BinanceRestApiManager___exit __pyx_string_tab[42]
#define __pyx_n_u_BinanceRestApiManager___init __pyx_string_tab[43]
#define __pyx_n_u_BinanceRestApiManager__create_ap __pyx_string_tab[44]
#define __pyx_n_u_BinanceRestApiManager__create_fu __pyx_string_tab[45]
#define __pyx_n_u_BinanceRestApiManager__create_fu_2 __pyx_string_tab[46]
#define __pyx_n_u_BinanceRestApiManager__create_fu_3 __pyx_string_tab[47]
#define __pyx_n_u_BinanceRestApiManager__create_fu_4 __pyx_string_tab[48]
#define __pyx_n_u_BinanceRestApiManager__create_ma __pyx_string_tab[49]
#define __pyx_n_u_BinanceRestApiManager__create_we __pyx_string_tab[50]
#define __pyx_n_u_BinanceRestApiManager__delete __pyx_string_tab[51]
#define __pyx_n_u_BinanceRestApiManager__generate __pyx_string_tab[52]
#define __pyx_n_u_BinanceRestApiManager__get __pyx_string_tab[53]
#define __pyx_n_u_BinanceRestApiManager__get_earli __pyx_string_tab[54]
#define __pyx_n_u_BinanceRestApiManager__handle_re __pyx_string_tab[55]
#define __pyx_n_u_BinanceRestApiManager__init_sess __pyx_string_tab[56]
#define __pyx_n_u_BinanceRestApiManager__order_par __pyx_string_tab[57]
#define __pyx_n_u_BinanceRestApiManager__post __pyx_string_tab[58]
#define __pyx_n_u_BinanceRestApiManager__put __pyx_string_tab[59]
#define __pyx_n_u_BinanceRestApiManager__request __pyx_string_tab[60]
#define __pyx_n_u_BinanceRestApiManager__request_a __pyx_string_tab[61]
#define __pyx_n_u_BinanceRestApiManager__request_f __pyx_string_tab[62]
#define __pyx_n_u_BinanceRestApiManager__request_f_2 __pyx_string_tab[63]
#define __pyx_n_u_BinanceRestApiManager__request_f_3 __pyx_string_tab[64]
#define __pyx_n_u_BinanceRestApiManager__request_f_4 __pyx_string_tab[65]
#define __pyx_n_u_BinanceRestApiManager__request_l __pyx_string_tab[66]
#define __pyx_n_u_BinanceRestApiManager__request_m __pyx_string_tab[67]
#define __pyx_n_u_BinanceRestApiManager__request_w __pyx_string_tab[68]
#define __pyx_kp_u_BinanceRestApiManager__save_used __pyx_string_tab[69]
#define __pyx_n_u_BinanceRestApiManager__save_used_2 __pyx_string_tab[70]
#define __pyx_n_u_BinanceRestApiManager_aggregate __pyx_string_tab[71]
#define __pyx_n_u_BinanceRestApiManager_cancel_all __pyx_string_tab[72]
#define __pyx_n_u_BinanceRestApiManager_cancel_all_2 __pyx_string_tab[73]
#define __pyx_n_u_BinanceRestApiManager_cancel_mar __pyx_string_tab[74]
#define __pyx_n_u_BinanceRestApiManager_cancel_mar_2 __pyx_string_tab[75]
#define __pyx_n_u_BinanceRestApiManager_cancel_ord __pyx_string_tab[76]
#define __pyx_n_u_BinanceRestApiManager_change_fix __pyx_string_tab[77]
#define __pyx_n_u_BinanceRestApiManager_create_iso __pyx_string_tab[78]
#define __pyx_n_u_BinanceRestApiManager_create_mar __pyx_string_tab[79]
#define __pyx_n_u_BinanceRestApiManager_create_mar_2 __pyx_string_tab[80]
#define __pyx_n_u_BinanceRestApiManager_create_mar_3 __pyx_string_tab[81]
#define __pyx_n_u_BinanceRestApiManager_create_oco __pyx_string_tab[82]
#define __pyx_n_u_BinanceRestApiManager_create_ord __pyx_string_tab[83]
#define __pyx_n_u_BinanceRestApiManager_create_sub __pyx_string_tab[84]
#define __pyx_n_u_BinanceRestApiManager_create_tes __pyx_string_tab[85]
#define __pyx_n_u_BinanceRestApiManager_disable_fa __pyx_string_tab[86]
#define __pyx_n_u_BinanceRestApiManager_enable_fas __pyx_string_tab[87]
#define __pyx_n_u_BinanceRestApiManager_enable_sub __pyx_string_tab[88]
#define __pyx_n_u_BinanceRestApiManager_enable_sub_2 __pyx_string_tab[89]
#define __pyx_n_u_BinanceRestApiManager_futures_ac __pyx_string_tab[90]
#define __pyx_n_u_BinanceRestApiManager_futures_ac_2 __pyx_string_tab[91]
#define __pyx_n_u_BinanceRestApiManager_futures_ac_3 __pyx_string_tab[92]
#define __pyx_n_u_BinanceRestApiManager_futures_ac_4 __pyx_string_tab[93]
#define __pyx_n_u_BinanceRestApiManager_futures_ag __pyx_string_tab[94]
#define __pyx_n_u_BinanceRestApiManager_futures_au __pyx_string_tab[95]
#define __pyx_n_u_BinanceRestApiManager_futures_ca __pyx_string_tab[96]
#define __pyx_n_u_BinanceRestApiManager_futures_ca_2 __pyx_string_tab[97]
#define __pyx_n_u_BinanceRestApiManager_futures_ca_3 __pyx_string_tab[98]
#define __pyx_n_u_BinanceRestApiManager_futures_ch __pyx_string_tab[99]
#define __pyx_n_u_BinanceRestApiManager_futures_ch_2 __pyx_string_tab[100]
#define __pyx_n_u_BinanceRestApiManager_futures_ch_3 __pyx_string_tab[101]
#define __pyx_n_u_BinanceRestApiManager_futures_ch_4 __pyx_string_tab[102]
#define __pyx_n_u_BinanceRestApiManager_futures_co __pyx_string_tab[103]
#define __pyx_n_u_BinanceRestApiManager_futures_co_10 __pyx_string_tab[104]
#define __pyx_n_u_BinanceRestApiManager_futures_co_11 __pyx_string_tab[105]
#define __pyx_n_u_BinanceRestApiManager_futures_co_12 __pyx_string_tab[106]
#define __pyx_n_u_BinanceRestApiManager_futures_co_13 __pyx_string_tab[107]
#define __pyx_n_u_BinanceRestApiManager_futures_co_14 __pyx_string_tab[108]
#define __pyx_n_u_BinanceRestApiManager_futures_co_15 __pyx_string_tab[109]
#define __pyx_n_u_BinanceRestApiManager_futures_co_16 __pyx_string_tab[110]
#define __pyx_n_u_BinanceRestApiManager_futures_co_17 __pyx_string_tab[111]
#define __pyx_n_u_BinanceRestApiManager_futures_co_18 __pyx_string_tab[112]
#define __pyx_n_u_BinanceRestApiManager_futures_co_19 __pyx_string_tab[113]
#define __pyx_n_u_BinanceRestApiManager_futures_co_2 __pyx_string_tab[114]
#define __pyx_n_u_BinanceRestApiManager_futures_co_20 __pyx_string_tab[115]
#define __pyx_n_u_BinanceRestApiManager_futures_co_21 __pyx_string_tab[116]
#define __pyx_n_u_BinanceRestApiManager_futures_co_22 __pyx_string_tab[117]
#define __pyx_n_u_BinanceRestApiManager_futures_co_23 __pyx_string_tab[118]
#define __pyx_n_u_BinanceRestApiManager_futures_co_24 __pyx_string_tab[119]
#define __pyx_n_u_BinanceRestApiManager_futures_co_25 __pyx_string_tab[120]
#define __pyx_n_u_BinanceRestApiManager_futures_co_26 __pyx_string_tab[121]
#define __pyx_n_u_BinanceRestApiManager_futures_co_27 __pyx_string_tab[122]
#define __pyx_n_u_BinanceRestApiManager_futures_co_28 __pyx_string_tab[123]
#define __pyx_n_u_BinanceRestApiManager_futures_co_29 __pyx_string_tab[124]
#define __pyx_n_u_BinanceRestApiManager_futures_co_3 __pyx_string_tab[125]
#define __pyx_n_u_BinanceRestApiManager_futures_co_30 __pyx_string_tab[126]
#define __pyx_n_u_BinanceRestApiManager_futures_co_31 __pyx_string_tab[127]
#define __pyx_n_u_BinanceRestApiManager_futures_co_32 __pyx_string_tab[128]
#define __pyx_n_u_BinanceRestApiManager_futures_co_33 __pyx_string_tab[129]
#define __pyx_n_u_BinanceRestApiManager_futures_co_34 __pyx_string_tab[130]
#define __pyx_n_u_BinanceRestApiManager_futures_co_35 __pyx_string_tab[131]
#define __pyx_n_u_BinanceRestApiManager_futures_co_36 __pyx_string_tab[132]
#define __pyx_n_u_BinanceRestApiManager_futures_co_37 __pyx_string_tab[133]
#define __pyx_n_u_BinanceRestApiManager_futures_co_38 __pyx_string_tab[134]
#define __pyx_n_u_BinanceRestApiManager_futures_co_39 __pyx_string_tab[135]
#define __pyx_n_u_BinanceRestApiManager_futures_co_4 __pyx_string_tab[136]
#define __pyx_n_u_BinanceRestApiManager_futures_co_40 __pyx_string_tab[137]
#define __pyx_n_u_BinanceRestApiManager_futures_co_41 __pyx_string_tab[138]
#define __pyx_n_u_BinanceRestApiManager_futures_co_42 __pyx_string_tab[139]
#define __pyx_n_u_BinanceRestApiManager_futures_co_43 __pyx_string_tab[140]
#define __pyx_n_u_BinanceRestApiManager_futures_co_5 __pyx_string_tab[141]
#define __pyx_n_u_BinanceRestApiManager_futures_co_6 __pyx_string_tab[142]
#define __pyx_n_u_BinanceRestApiManager_futures_co_7 __pyx_string_tab[143]
#define __pyx_n_u_BinanceRestApiManager_futures_co_8 __pyx_string_tab[144]
#define __pyx_n_u_BinanceRestApiManager_futures_co_9 __pyx_string_tab[145]
#define __pyx_n_u_BinanceRestApiManager_futures_cr __pyx_string_tab[146]
#define __pyx_n_u_BinanceRestApiManager_futures_ex __pyx_string_tab[147]
#define __pyx_n_u_BinanceRestApiManager_futures_fu __pyx_string_tab[148]
#define __pyx_n_u_BinanceRestApiManager_futures_ge __pyx_string_tab[149]
#define __pyx_n_u_BinanceRestApiManager_futures_ge_2 __pyx_string_tab[150]
#define __pyx_n_u_BinanceRestApiManager_futures_ge_3 __pyx_string_tab[151]
#define __pyx_n_u_BinanceRestApiManager_futures_ge_4 __pyx_string_tab[152]
#define __pyx_n_u_BinanceRestApiManager_futures_hi __pyx_string_tab[153]
#define __pyx_n_u_BinanceRestApiManager_futures_in __pyx_string_tab[154]
#define __pyx_n_u_BinanceRestApiManager_futures_kl __pyx_string_tab[155]
#define __pyx_n_u_BinanceRestApiManager_futures_le __pyx_string_tab[156]
#define __pyx_n_u_BinanceRestApiManager_futures_li __pyx_string_tab[157]
#define __pyx_n_u_BinanceRestApiManager_futures_ma __pyx_string_tab[158]
#define __pyx_n_u_BinanceRestApiManager_futures_op __pyx_string_tab[159]
#define __pyx_n_u_BinanceRestApiManager_futures_op_2 __pyx_string_tab[160]
#define __pyx_n_u_BinanceRestApiManager_futures_or __pyx_string_tab[161]
#define __pyx_n_u_BinanceRestApiManager_futures_or_2 __pyx_string_tab[162]
#define __pyx_n_u_BinanceRestApiManager_futures_pi __pyx_string_tab[163]
#define __pyx_n_u_BinanceRestApiManager_futures_pl __pyx_string_tab[164]
#define __pyx_n_u_BinanceRestApiManager_futures_po __pyx_string_tab[165]
#define __pyx_n_u_BinanceRestApiManager_futures_po_2 __pyx_string_tab[166]
#define __pyx_n_u_BinanceRestApiManager_futures_re __pyx_string_tab[167]
#define __pyx_n_u_BinanceRestApiManager_futures_st __pyx_string_tab[168]
#define __pyx_n_u_BinanceRestApiManager_futures_st_2 __pyx_string_tab[169]
#define __pyx_n_u_BinanceRestApiManager_futures_st_3 __pyx_string_tab[170]
#define __pyx_n_u_BinanceRestApiManager_futures_sy __pyx_string_tab[171]
#define __pyx_n_u_BinanceRestApiManager_futures_ti __pyx_string_tab[172]
#define __pyx_n_u_BinanceRestApiManager_futures_ti_2 __pyx_string_tab[173]
#define __pyx_n_u_BinanceRestApiManager_get_accoun __pyx_string_tab[174]
#define __pyx_n_u_BinanceRestApiManager_get_accoun_2 __pyx_string_tab[175]
#define __pyx_n_u_BinanceRestApiManager_get_accoun_3 __pyx_string_tab[176]
#define __pyx_n_u_BinanceRestApiManager_get_accoun_4 __pyx_string_tab[177]
#define __pyx_n_u_BinanceRestApiManager_get_aggreg __pyx_string_tab[178]
#define __pyx_n_u_BinanceRestApiManager_get_all_co __pyx_string_tab[179]
#define __pyx_n_u_BinanceRestApiManager_get_all_is __pyx_string_tab[180]
#define __pyx_n_u_BinanceRestApiManager_get_all_ma __pyx_string_tab[181]
#define __pyx_n_u_BinanceRestApiManager_get_all_or __pyx_string_tab[182]
#define __pyx_n_u_BinanceRestApiManager_get_all_ti __pyx_string_tab[183]
#define __pyx_n_u_BinanceRestApiManager_get_asset __pyx_string_tab[184]
#define __pyx_n_u_BinanceRestApiManager_get_asset_2 __pyx_string_tab[185]
#define __pyx_n_u_BinanceRestApiManager_get_asset_3 __pyx_string_tab[186]
#define __pyx_n_u_BinanceRestApiManager_get_avg_pr __pyx_string_tab[187]
#define __pyx_n_u_BinanceRestApiManager_get_bnb_bu __pyx_string_tab[188]
#define __pyx_n_u_BinanceRestApiManager_get_deposi __pyx_string_tab[189]
#define __pyx_n_u_BinanceRestApiManager_get_deposi_2 __pyx_string_tab[190]
#define __pyx_n_u_BinanceRestApiManager_get_dust_l __pyx_string_tab[191]
#define __pyx_n_u_BinanceRestApiManager_get_exchan __pyx_string_tab[192]
#define __pyx_n_u_BinanceRestApiManager_get_fixed __pyx_string_tab[193]
#define __pyx_n_u_BinanceRestApiManager_get_histor __pyx_string_tab[194]
#define __pyx_n_u_BinanceRestApiManager_get_histor_2 __pyx_string_tab[195]
#define __pyx_n_u_BinanceRestApiManager_get_histor_3 __pyx_string_tab[196]
#define __pyx_n_u_BinanceRestApiManager_get_isolat __pyx_string_tab[197]
#define __pyx_n_u_BinanceRestApiManager_get_isolat_2 __pyx_string_tab[198]
#define __pyx_n_u_BinanceRestApiManager_get_klines __pyx_string_tab[199]
#define __pyx_kp_u_BinanceRestApiManager_get_latest __pyx_string_tab[200]
#define __pyx_n_u_BinanceRestApiManager_get_latest_2 __pyx_string_tab[201]
#define __pyx_n_u_BinanceRestApiManager_get_latest_3 __pyx_string_tab[202]
#define __pyx_n_u_BinanceRestApiManager_get_lendin __pyx_string_tab[203]
#define __pyx_n_u_BinanceRestApiManager_get_lendin_2 __pyx_string_tab[204]
#define __pyx_n_u_BinanceRestApiManager_get_lendin_3 __pyx_string_tab[205]
#define __pyx_n_u_BinanceRestApiManager_get_lendin_4 __pyx_string_tab[206]
#define __pyx_n_u_BinanceRestApiManager_get_lendin_5 __pyx_string_tab[207]
#define __pyx_n_u_BinanceRestApiManager_get_lendin_6 __pyx_string_tab[208]
#define __pyx_n_u_BinanceRestApiManager_get_lendin_7 __pyx_string_tab[209]
#define __pyx_n_u_BinanceRestApiManager_get_lendin_8 __pyx_string_tab[210]
#define __pyx_n_u_BinanceRestApiManager_get_margin __pyx_string_tab[211]
#define __pyx_n_u_BinanceRestApiManager_get_margin_2 __pyx_string_tab[212]
#define __pyx_n_u_BinanceRestApiManager_get_margin_3 __pyx_string_tab[213]
#define __pyx_n_u_BinanceRestApiManager_get_margin_4 __pyx_string_tab[214]
#define __pyx_n_u_BinanceRestApiManager_get_margin_5 __pyx_string_tab[215]
#define __pyx_n_u_BinanceRestApiManager_get_margin_6 __pyx_string_tab[216]
#define __pyx_n_u_BinanceRestApiManager_get_margin_7 __pyx_string_tab[217]
#define __pyx_n_u_BinanceRestApiManager_get_margin_8 __pyx_string_tab[218]
#define __pyx_n_u_BinanceRestApiManager_get_margin_9 __pyx_string_tab[219]
#define __pyx_n_u_BinanceRestApiManager_get_max_ma __pyx_string_tab[220]
#define __pyx_n_u_BinanceRestApiManager_get_max_ma_2 __pyx_string_tab[221]
#define __pyx_n_u_BinanceRestApiManager_get_my_tra __pyx_string_tab[222]
#define __pyx_n_u_BinanceRestApiManager_get_open_i __pyx_string_tab[223]
#define __pyx_n_u_BinanceRestApiManager_get_open_m __pyx_string_tab[224]
#define __pyx_n_u_BinanceRestApiManager_get_open_m_2 __pyx_string_tab[225]
#define __pyx_n_u_BinanceRestApiManager_get_open_o __pyx_string_tab[226]
#define __pyx_n_u_BinanceRestApiManager_get_order __pyx_string_tab[227]
#define __pyx_n_u_BinanceRestApiManager_get_order_2 __pyx_string_tab[228]
#define __pyx_n_u_BinanceRestApiManager_get_orderb __pyx_string_tab[229]
#define __pyx_n_u_BinanceRestApiManager_get_orderb_2 __pyx_string_tab[230]
#define __pyx_n_u_BinanceRestApiManager_get_produc __pyx_string_tab[231]
#define __pyx_n_u_BinanceRestApiManager_get_recent __pyx_string_tab[232]
#define __pyx_n_u_BinanceRestApiManager_get_server __pyx_string_tab[233]
#define __pyx_n_u_BinanceRestApiManager_get_sub_ac __pyx_string_tab[234]
#define __pyx_n_u_BinanceRestApiManager_get_sub_ac_2 __pyx_string_tab[235]
#define __pyx_n_u_BinanceRestApiManager_get_sub_ac_3 __pyx_string_tab[236]
#define __pyx_n_u_BinanceRestApiManager_get_sub_ac_4 __pyx_string_tab[237]
#define __pyx_n_u_BinanceRestApiManager_get_subacc __pyx_string_tab[238]
#define __pyx_n_u_BinanceRestApiManager_get_subacc_2 __pyx_string_tab[239]
#define __pyx_n_u_BinanceRestApiManager_get_subacc_3 __pyx_string_tab[240]
#define __pyx_n_u_BinanceRestApiManager_get_subacc_4 __pyx_string_tab[241]
#define __pyx_n_u_BinanceRestApiManager_get_subacc_5 __pyx_string_tab[242]
#define __pyx_n_u_BinanceRestApiManager_get_subacc_6 __pyx_string_tab[243]
#define __pyx_n_u_BinanceRestApiManager_get_subacc_7 __pyx_string_tab[244]
#define __pyx_n_u_BinanceRestApiManager_get_subacc_8 __pyx_string_tab[245]
#define __pyx_n_u_BinanceRestApiManager_get_subacc_9 __pyx_string_tab[246]
#define __pyx_n_u_BinanceRestApiManager_get_symbol __pyx_string_tab[247]
#define __pyx_n_u_BinanceRestApiManager_get_symbol_2 __pyx_string_tab[248]
#define __pyx_n_u_BinanceRestApiManager_get_system __pyx_string_tab[249]
#define __pyx_n_u_BinanceRestApiManager_get_ticker __pyx_string_tab[250]
#define __pyx_n_u_BinanceRestApiManager_get_trade __pyx_string_tab[251]
#define __pyx_n_u_BinanceRestApiManager_get_univer __pyx_string_tab[252]
#define __pyx_n_u_BinanceRestApiManager_get_used_w __pyx_string_tab[253]
#define __pyx_n_u_BinanceRestApiManager_get_user_a __pyx_string_tab[254]
#define __pyx_n_u_BinanceRestApiManager_get_versio __pyx_string_tab[255]
#define __pyx_n_u_BinanceRestApiManager_get_withdr __pyx_string_tab[256]
#define __pyx_n_u_BinanceRestApiManager_get_withdr_2 __pyx_string_tab[257]
#define __pyx_kp_u_BinanceRestApiManager_instance __pyx_string_tab[258]
#define __pyx_n_u_BinanceRestApiManager_is_update __pyx_string_tab[259]
#define __pyx_n_u_BinanceRestApiManager_isolated_m __pyx_string_tab[260]
#define __pyx_n_u_BinanceRestApiManager_isolated_m_2 __pyx_string_tab[261]
#define __pyx_n_u_BinanceRestApiManager_isolated_m_3 __pyx_string_tab[262]
#define __pyx_n_u_BinanceRestApiManager_make_subac __pyx_string_tab[263]
#define __pyx_n_u_BinanceRestApiManager_make_subac_2 __pyx_string_tab[264]
#define __pyx_n_u_BinanceRestApiManager_make_subac_3 __pyx_string_tab[265]
#define __pyx_n_u_BinanceRestApiManager_make_subac_4 __pyx_string_tab[266]
#define __pyx_n_u_BinanceRestApiManager_make_unive __pyx_string_tab[267]
#define __pyx_n_u_BinanceRestApiManager_margin_str __pyx_string_tab[268]
#define __pyx_n_u_BinanceRestApiManager_margin_str_2 __pyx_string_tab[269]
#define __pyx_n_u_BinanceRestApiManager_margin_str_3 __pyx_string_tab[270]
#define __pyx_n_u_BinanceRestApiManager_new_transf __pyx_string_tab[271]
#define __pyx_n_u_BinanceRestApiManager_order_limi __pyx_string_tab[272]
#define __pyx_n_u_BinanceRestApiManager_order_limi_2 __pyx_string_tab[273]
#define __pyx_n_u_BinanceRestApiManager_order_limi_3 __pyx_string_tab[274]
#define __pyx_n_u_BinanceRestApiManager_order_mark __pyx_string_tab[275]
#define __pyx_n_u_BinanceRestApiManager_order_mark_2 __pyx_string_tab[276]
#define __pyx_n_u_BinanceRestApiManager_order_mark_3 __pyx_string_tab[277]
#define __pyx_n_u_BinanceRestApiManager_order_oco __pyx_string_tab[278]
#define __pyx_n_u_BinanceRestApiManager_order_oco_2 __pyx_string_tab[279]
#define __pyx_n_u_BinanceRestApiManager_ping __pyx_string_tab[280]
#define __pyx_n_u_BinanceRestApiManager_purchase_l __pyx_string_tab[281]
#define __pyx_n_u_BinanceRestApiManager_query_suba __pyx_string_tab[282]
#define __pyx_n_u_BinanceRestApiManager_query_univ __pyx_string_tab[283]
#define __pyx_n_u_BinanceRestApiManager_redeem_len __pyx_string_tab[284]
#define __pyx_n_u_BinanceRestApiManager_repay_marg __pyx_string_tab[285]
#define __pyx_kp_u_BinanceRestApiManager_stop_manag __pyx_string_tab[286]
#define __pyx_kp_u_BinanceRestApiManager_stop_manag_2 __pyx_string_tab[287]
#define __pyx_n_u_BinanceRestApiManager_stop_manag_3 __pyx_string_tab[288]
#define __pyx_n_u_BinanceRestApiManager_stream_clo __pyx_string_tab[289]
#define __pyx_n_u_BinanceRestApiManager_stream_get __pyx_string_tab[290]
#define __pyx_n_u_BinanceRestApiManager_stream_kee __pyx_string_tab[291]
#define __pyx_n_u_BinanceRestApiManager_toggle_bnb __pyx_string_tab[292]
#define __pyx_n_u_BinanceRestApiManager_transfer_d __pyx_string_tab[293]
#define __pyx_n_u_BinanceRestApiManager_transfer_h __pyx_string_tab[294]
#define __pyx_n_u_BinanceRestApiManager_transfer_i __pyx_string_tab[295]
#define __pyx_n_u_BinanceRestApiManager_transfer_m __pyx_string_tab[296]
#define __pyx_n_u_BinanceRestApiManager_transfer_s __pyx_string_tab[297]
#define __pyx_n_u_BinanceRestApiManager_transfer_s_2 __pyx_string_tab[298]
#define __pyx_n_u_BinanceRestApiManager_universal __pyx_string_tab[299]
#define __pyx_n_u_BinanceRestApiManager_withdraw __pyx_string_tab[300]
#define __pyx_n_u_BinanceWithdrawException __pyx_string_tab[301]
#define __pyx_n_u_C2C_MAIN __pyx_string_tab[302]
#define __pyx_n_u_C2C_MINING __pyx_string_tab[303]
#define __pyx_n_u_C2C_UMFUTURE __pyx_string_tab[304]
#define __pyx_n_u_CANCELED __pyx_string_tab[305]
#define __pyx_n_u_CMFUTURE_MAIN __pyx_string_tab[306]
#define __pyx_n_u_COIN_FUTURE_TO_SPOT __pyx_string_tab[307]
#define __pyx_kp_u_Created_SOCKS5_proxy_URI __pyx_string_tab[308]
#define __pyx_n_u_Date __pyx_string_tab[309]
#define __pyx_n_u_EXPIRED __pyx_string_tab[310]
#define __pyx_kp_u_Entering_with_context_of_Binance __pyx_string_tab[311]
#define __pyx_n_u_FIAT_TO_MINING __pyx_string_tab[312]
#define __pyx_n_u_FIAT_TO_SPOT __pyx_string_tab[313]
#define __pyx_n_u_FIAT_TO_USDT_FUTURE __pyx_string_tab[314]
#define __pyx_n_u_FILLED __pyx_string_tab[315]
#define __pyx_n_u_FOK __pyx_string_tab[316]
#define __pyx_n_u_FULL __pyx_string_tab[317]
#define __pyx_n_u_FUTURES_API_VERSION __pyx_string_tab[318]
#define __pyx_n_u_FUTURES_API_VERSION2 __pyx_string_tab[319]
#define __pyx_n_u_FUTURES_COIN_DATA_URL __pyx_string_tab[320]
#define __pyx_n_u_FUTURES_COIN_URL __pyx_string_tab[321]
#define __pyx_n_u_FUTURES_DATA_URL __pyx_string_tab[322]
#define __pyx_n_u_FUTURES_URL __pyx_string_tab[323]
#define __pyx_n_u_GTC __pyx_string_tab[324]
#define __pyx_n_u_IOC __pyx_string_tab[325]
#define __pyx_n_u_ISOLATED_MARGIN __pyx_string_tab[326]
#define __pyx_kp_u_Initiating_colorama __pyx_string_tab[327]
#define __pyx_kp_u_Invalid_Response_s __pyx_string_tab[328]
#define __pyx_n_u_KLINE_INTERVAL_12HOUR __pyx_string_tab[329]
#define __pyx_n_u_KLINE_INTERVAL_15MINUTE __pyx_string_tab[330]
#define __pyx_n_u_KLINE_INTERVAL_1DAY __pyx_string_tab[331]
#define __pyx_n_u_KLINE_INTERVAL_1HOUR __pyx_string_tab[332]
#define __pyx_n_u_KLINE_INTERVAL_1MINUTE __pyx_string_tab[333]
#define __pyx_n_u_KLINE_INTERVAL_1MONTH __pyx_string_tab[334]
#define __pyx_n_u_KLINE_INTERVAL_1SECOND __pyx_string_tab[335]
#define __pyx_n_u_KLINE_INTERVAL_1WEEK __pyx_string_tab[336]
#define __pyx_n_u_KLINE_INTERVAL_2HOUR __pyx_string_tab[337]
#define __pyx_n_u_KLINE_INTERVAL_30MINUTE __pyx_string_tab[338]
#define __pyx_n_u_KLINE_INTERVAL_3DAY __pyx_string_tab[339]
#define __pyx_n_u_KLINE_INTERVAL_3MINUTE __pyx_string_tab[340]
#define __pyx_n_u_KLINE_INTERVAL_4HOUR __pyx_string_tab[341]
#define __pyx_n_u_KLINE_INTERVAL_5MINUTE __pyx_string_tab[342]
#define __pyx_n_u_KLINE_INTERVAL_6HOUR __pyx_string_tab[343]
#define __pyx_n_u_KLINE_INTERVAL_8HOUR __pyx_string_tab[344]
#define __pyx_n_u_KeyError __pyx_string_tab[345]
#define __pyx_n_u_LIMIT __pyx_string_tab[346]
#define __pyx_n_u_LIMIT_MAKER __pyx_string_tab[347]
#define __pyx_kp_u_Leaving_with_context_of_BinanceR __pyx_string_tab[348]
#define __pyx_n_u_M __pyx_string_tab[349]
#define __pyx_n_u_MAIN_C2C __pyx_string_tab[350]
#define __pyx_n_u_MAIN_CMFUTURE __pyx_string_tab[351]
#define __pyx_n_u_MAIN_MARGIN __pyx_string_tab[352]
#define __pyx_n_u_MAIN_MINING __pyx_string_tab[353]
#define __pyx_n_u_MAIN_UMFUTURE __pyx_string_tab[354]
#define __pyx_n_u_MARGIN_API_URL __pyx_string_tab[355]
#define __pyx_n_u_MARGIN_API_VERSION __pyx_string_tab[356]
#define __pyx_n_u_MARGIN_CROSS_TO_SPOT __pyx_string_tab[357]
#define __pyx_n_u_MARGIN_CROSS_TO_USDT_FUTURE __pyx_string_tab[358]
#define __pyx_n_u_MARGIN_MAIN __pyx_string_tab[359]
#define __pyx_n_u_MARGIN_UMFUTURE __pyx_string_tab[360]
#define __pyx_n_u_MARKET __pyx_string_tab[361]
#define __pyx_n_u_MINING_C2C __pyx_string_tab[362]
#define __pyx_n_u_MINING_MAIN __pyx_string_tab[363]
#define __pyx_n_u_MINING_TO_FIAT __pyx_string_tab[364]
#define __pyx_n_u_MINING_TO_SPOT __pyx_string_tab[365]
#define __pyx_n_u_MINING_TO_USDT_FUTURE __pyx_string_tab[366]
#define __pyx_n_u_MINING_UMFUTURE __pyx_string_tab[367]
#define __pyx_n_u_NEW __pyx_string_tab[368]
#define __pyx_kp_u_New_instance_of __pyx_string_tab[369]
#define __pyx_kp_u_None __pyx_string_tab[370]
#define __pyx_kp_u_Note_that_Cython_is_deliberately __pyx_string_tab[371]
#define __pyx_n_u_ORDER_RESP_TYPE_ACK __pyx_string_tab[372]
#define __pyx_n_u_ORDER_RESP_TYPE_FULL __pyx_string_tab[373]
#define __pyx_n_u_ORDER_RESP_TYPE_RESULT __pyx_string_tab[374]
#define __pyx_n_u_ORDER_STATUS_CANCELED __pyx_string_tab[375]
#define __pyx_n_u_ORDER_STATUS_EXPIRED __pyx_string_tab[376]
#define __pyx_n_u_ORDER_STATUS_FILLED __pyx_string_tab[377]
#define __pyx_n_u_ORDER_STATUS_NEW __pyx_string_tab[378]
#define __pyx_n_u_ORDER_STATUS_PARTIALLY_FILLED __pyx_string_tab[379]
#define __pyx_n_u_ORDER_STATUS_PENDING_CANCEL __pyx_string_tab[380]
#define __pyx_n_u_ORDER_STATUS_REJECTED __pyx_string_tab[381]
#define __pyx_n_u_ORDER_TYPE_LIMIT __pyx_string_tab[382]
#define __pyx_n_u_ORDER_TYPE_LIMIT_MAKER __pyx_string_tab[383]
#define __pyx_n_u_ORDER_TYPE_MARKET __pyx_string_tab[384]
#define __pyx_n_u_ORDER_TYPE_STOP_LOSS __pyx_string_tab[385]
#define __pyx_n_u_ORDER_TYPE_STOP_LOSS_LIMIT __pyx_string_tab[386]
#define __pyx_n_u_ORDER_TYPE_TAKE_PROFIT __pyx_string_tab[387]
#define __pyx_n_u_ORDER_TYPE_TAKE_PROFIT_LIMIT __pyx_string_tab[388]
#define __pyx_n_u_Optional __pyx_string_tab[389]
#define __pyx_kp_u_Optional_bool __pyx_string_tab[390]
#define __pyx_kp_u_Optional_dict __pyx_string_tab[391]
#define __pyx_kp_u_Optional_float __pyx_string_tab[392]
#define __pyx_kp_u_Optional_str __pyx_string_tab[393]
#define __pyx_n_u_PARTIALLY_FILLED __pyx_string_tab[394]
#define __pyx_n_u_PENDING_CANCEL __pyx_string_tab[395]
#define __pyx_n_u_PRIVATE_API_VERSION __pyx_string_tab[396]
#define __pyx_n_u_PUBLIC_API_VERSION __pyx_string_tab[397]
#define __pyx_n_u_REJECTED __pyx_string_tab[398]
#define __pyx_n_u_RESULT __pyx_string_tab[399]
#define __pyx_kp_u_Read_the_docs_to_see_a_list_of __pyx_string_tab[400]
#define __pyx_kp_u_Release __pyx_string_tab[401]
#define __pyx_n_u_SELL __pyx_string_tab[402]
#define __pyx_n_u_SIDE_BUY __pyx_string_tab[403]
#define __pyx_n_u_SIDE_SELL __pyx_string_tab[404]
#define __pyx_n_u_SPOT __pyx_string_tab[405]
#define __pyx_n_u_SPOT_TO_COIN_FUTURE __pyx_string_tab[406]
#define __pyx_n_u_SPOT_TO_FIAT __pyx_string_tab[407]
#define __pyx_n_u_SPOT_TO_MARGIN_CROSS __pyx_string_tab[408]
#define __pyx_n_u_SPOT_TO_MINING __pyx_string_tab[409]
#define __pyx_n_u_SPOT_TO_USDT_FUTURE __pyx_string_tab[410]
#define __pyx_n_u_STOP_LOSS __pyx_string_tab[411]
#define __pyx_n_u_STOP_LOSS_LIMIT __pyx_string_tab[412]
#define __pyx_n_u_SYMBOL_TYPE_SPOT __pyx_string_tab[413]
#define __pyx_n_u_T __pyx_string_tab[414]
#define __pyx_n_u_TAKE_PROFIT __pyx_string_tab[415]
#define __pyx_n_u_TAKE_PROFIT_LIMIT __pyx_string_tab[416]
#define __pyx_n_u_TIME_IN_FORCE_FOK __pyx_string_tab[417]
#define __pyx_n_u_TIME_IN_FORCE_GTC __pyx_string_tab[418]
#define __pyx_n_u_TIME_IN_FORCE_IOC __pyx_string_tab[419]
#define __pyx_kp_u_The_parameter_BinanceRestApiMana __pyx_string_tab[420]
#define __pyx_kp_u_There_is_no_entry_with_withdraw __pyx_string_tab[421]
#define __pyx_n_u_UMFUTURE_C2C __pyx_string_tab[422]
#define __pyx_n_u_UMFUTURE_MAIN __pyx_string_tab[423]
#define __pyx_n_u_UMFUTURE_MARGIN __pyx_string_tab[424]
#define __pyx_n_u_USDT_FUTURE_TO_FIAT __pyx_string_tab[425]
#define __pyx_n_u_USDT_FUTURE_TO_MARGIN_CROSS __pyx_string_tab[426]
#define __pyx_n_u_USDT_FUTURE_TO_SPOT __pyx_string_tab[427]
#define __pyx_n_u_UnknownExchange __pyx_string_tab[428]
#define __pyx_kp_u_Unknown_exchange __pyx_string_tab[429]
#define __pyx_kp_u_User_Agent __pyx_string_tab[430]
#define __pyx_n_u_ValueError __pyx_string_tab[431]
#define __pyx_n_u_WEBSITE_URL __pyx_string_tab[432]
#define __pyx_kp_u_X_MBX_APIKEY __pyx_string_tab[433]
#define __pyx_kp_u_X_MBX_USED_WEIGHT __pyx_string_tab[434]
#define __pyx_kp_u__10 __pyx_string_tab[435]
#define __pyx_kp_u__11 __pyx_string_tab[436]
#define __pyx_n_u__12 __pyx_string_tab[437]
#define __pyx_kp_u__13 __pyx_string_tab[438]
#define __pyx_kp_u__2 __pyx_string_tab[439]
#define __pyx_kp_u__3 __pyx_string_tab[440]
#define __pyx_kp_u__4 __pyx_string_tab[441]
#define __pyx_n_u__5 __pyx_string_tab[442]
#define __pyx_kp_u__6 __pyx_string_tab[443]
#define __pyx_kp_u__7 __pyx_string_tab[444]
#define __pyx_kp_u__8 __pyx_string_tab[445]
#define __pyx_kp_u__9 __pyx_string_tab[446]
#define __pyx_n_u_a __pyx_string_tab[447]
#define __pyx_kp_u_a_d_b_Y_H_M_S_GMT __pyx_string_tab[448]
#define __pyx_n_u_account __pyx_string_tab[449]
#define __pyx_n_u_accountSnapshot __pyx_string_tab[450]
#define __pyx_kp_u_account_apiTradingStatus __pyx_string_tab[451]
#define __pyx_kp_u_account_status __pyx_string_tab[452]
#define __pyx_kp_u_add_note __pyx_string_tab[453]
#define __pyx_n_u_aggTrades __pyx_string_tab[454]
#define __pyx_n_u_aggregate_trade_iter __pyx_string_tab[455]
#define __pyx_n_u_allForceOrders __pyx_string_tab[456]
#define __pyx_n_u_allOpenOrders __pyx_string_tab[457]
#define __pyx_n_u_allOrders __pyx_string_tab[458]
#define __pyx_n_u_api_key __pyx_string_tab[459]
#define __pyx_n_u_api_secret __pyx_string_tab[460]
#define __pyx_n_u_app_name __pyx_string_tab[461]
#define __pyx_kp_u_application_json __pyx_string_tab[462]
#define __pyx_n_u_asset __pyx_string_tab[463]
#define __pyx_kp_u_asset_assetDetail __pyx_string_tab[464]
#define __pyx_kp_u_asset_assetDividend __pyx_string_tab[465]
#define __pyx_kp_u_asset_dribblet __pyx_string_tab[466]
#define __pyx_kp_u_asset_dust __pyx_string_tab[467]
#define __pyx_kp_u_asset_tradeFee __pyx_string_tab[468]
#define __pyx_kp_u_asset_transfer __pyx_string_tab[469]
#define __pyx_n_u_asyncio_coroutines __pyx_string_tab[470]
#define __pyx_n_u_avgPrice __pyx_string_tab[471]
#define __pyx_n_u_bal __pyx_string_tab[472]
#define __pyx_n_u_balance __pyx_string_tab[473]
#define __pyx_n_u_balances __pyx_string_tab[474]
#define __pyx_n_u_batchOrders __pyx_string_tab[475]
#define __pyx_kp_u_binance_com __pyx_string_tab[476]
#define __pyx_kp_u_binance_com_coin_futures __pyx_string_tab[477]
#define __pyx_kp_u_binance_com_coin_futures_2 __pyx_string_tab[478]
#define __pyx_kp_u_binance_com_futures __pyx_string_tab[479]
#define __pyx_kp_u_binance_com_futures_testnet __pyx_string_tab[480]
#define __pyx_kp_u_binance_com_isolated_margin __pyx_string_tab[481]
#define __pyx_kp_u_binance_com_isolated_margin_test __pyx_string_tab[482]
#define __pyx_kp_u_binance_com_margin __pyx_string_tab[483]
#define __pyx_kp_u_binance_com_margin_testnet __pyx_string_tab[484]
#define __pyx_kp_u_binance_com_testnet __pyx_string_tab[485]
#define __pyx_kp_u_binance_us __pyx_string_tab[486]
#define __pyx_n_u_bnbBurn __pyx_string_tab[487]
#define __pyx_n_u_bool __pyx_string_tab[488]
#define __pyx_n_u_cached __pyx_string_tab[489]
#define __pyx_n_u_cached_timeout __pyx_string_tab[490]
#define __pyx_n_u_cancel_all_open_margin_orders __pyx_string_tab[491]
#define __pyx_n_u_cancel_all_open_orders __pyx_string_tab[492]
#define __pyx_n_u_cancel_margin_oco_order __pyx_string_tab[493]
#define __pyx_n_u_cancel_margin_order __pyx_string_tab[494]
#define __pyx_n_u_cancel_order __pyx_string_tab[495]
#define __pyx_kp_u_capital_config_getall __pyx_string_tab[496]
#define __pyx_kp_u_capital_deposit_address __pyx_string_tab[497]
#define __pyx_kp_u_capital_deposit_hisrec __pyx_string_tab[498]
#define __pyx_kp_u_capital_deposit_subAddress __pyx_string_tab[499]
#define __pyx_kp_u_capital_deposit_subHisrec __pyx_string_tab[500]
#define __pyx_kp_u_capital_withdraw_apply __pyx_string_tab[501]
#define __pyx_kp_u_capital_withdraw_history __pyx_string_tab[502]
#define __pyx_n_u_change_fixed_activity_to_daily_p __pyx_string_tab[503]
#define __pyx_n_u_class_getitem __pyx_string_tab[504]
#define __pyx_n_u_cline_in_traceback __pyx_string_tab[505]
#define __pyx_n_u_close __pyx_string_tab[506]
#define __pyx_n_u_colorama __pyx_string_tab[507]
#define __pyx_n_u_commissionRate __pyx_string_tab[508]
#define __pyx_kp_u_compiled_on __pyx_string_tab[509]
#define __pyx_n_u_continuousKlines __pyx_string_tab[510]
#define __pyx_n_u_countdownCancelAll __pyx_string_tab[511]
#define __pyx_n_u_create_api_uri __pyx_string_tab[512]
#define __pyx_n_u_create_futures_api_uri __pyx_string_tab[513]
#define __pyx_n_u_create_futures_coin_api_url __pyx_string_tab[514]
#define __pyx_n_u_create_futures_coin_data_api_ur __pyx_string_tab[515]
#define __pyx_n_u_create_futures_data_api_uri __pyx_string_tab[516]
#define __pyx_n_u_create_isolated_margin_account __pyx_string_tab[517]
#define __pyx_n_u_create_margin_api_uri __pyx_string_tab[518]
#define __pyx_n_u_create_margin_loan __pyx_string_tab[519]
#define __pyx_n_u_create_margin_oco_order __pyx_string_tab[520]
#define __pyx_n_u_create_margin_order __pyx_string_tab[521]
#define __pyx_n_u_create_oco_order __pyx_string_tab[522]
#define __pyx_n_u_create_order __pyx_string_tab[523]
#define __pyx_n_u_create_sub_account_futures_trans __pyx_string_tab[524]
#define __pyx_n_u_create_test_order __pyx_string_tab[525]
#define __pyx_n_u_create_website_uri __pyx_string_tab[526]
#define __pyx_n_u_critical __pyx_string_tab[527]
#define __pyx_n_u_d __pyx_string_tab[528]
#define __pyx_n_u_data __pyx_string_tab[529]
#define __pyx_n_u_date_to_milliseconds __pyx_string_tab[530]
#define __pyx_n_u_datetime __pyx_string_tab[531]
#define __pyx_n_u_debug __pyx_string_tab[532]
#define __pyx_n_u_delete __pyx_string_tab[533]
#define __pyx_n_u_delete_2 __pyx_string_tab[534]
#define __pyx_n_u_depth __pyx_string_tab[535]
#define __pyx_kp_u_dev __pyx_string_tab[536]
#define __pyx_n_u_dict __pyx_string_tab[537]
#define __pyx_kp_u_disable __pyx_string_tab[538]
#define __pyx_n_u_disableFastWithdrawSwitch __pyx_string_tab[539]
#define __pyx_n_u_disable_colorama __pyx_string_tab[540]
#define __pyx_n_u_disable_fast_withdraw_switch __pyx_string_tab[541]
#define __pyx_n_u_doc __pyx_string_tab[542]
#define __pyx_kp_u_enable __pyx_string_tab[543]
#define __pyx_n_u_enableFastWithdrawSwitch __pyx_string_tab[544]
#define __pyx_n_u_enable_fast_withdraw_switch __pyx_string_tab[545]
#define __pyx_n_u_enable_subaccount_futures __pyx_string_tab[546]
#define __pyx_n_u_enable_subaccount_margin __pyx_string_tab[547]
#define __pyx_n_u_encode __pyx_string_tab[548]
#define __pyx_n_u_endTime __pyx_string_tab[549]
#define __pyx_n_u_end_str __pyx_string_tab[550]
#define __pyx_n_u_end_ts __pyx_string_tab[551]
#define __pyx_n_u_enter __pyx_string_tab[552]
#define __pyx_n_u_entry __pyx_string_tab[553]
#define __pyx_n_u_enumerate __pyx_string_tab[554]
#define __pyx_n_u_error_msg __pyx_string_tab[555]
#define __pyx_n_u_error_traceback __pyx_string_tab[556]
#define __pyx_n_u_exc_type __pyx_string_tab[557]
#define __pyx_n_u_exc_value __pyx_string_tab[558]
#define __pyx_n_u_exceptions __pyx_string_tab[559]
#define __pyx_n_u_exchange __pyx_string_tab[560]
#define __pyx_n_u_exchangeInfo __pyx_string_tab[561]
#define __pyx_kp_u_exchange_2 __pyx_string_tab[562]
#define __pyx_kp_u_exchange_api_v1_public_asset_ser __pyx_string_tab[563]
#define __pyx_n_u_exit __pyx_string_tab[564]
#define __pyx_n_u_f __pyx_string_tab[565]
#define __pyx_n_u_first_valid_ts __pyx_string_tab[566]
#define __pyx_kp_u_for_exchange __pyx_string_tab[567]
#define __pyx_n_u_force_params __pyx_string_tab[568]
#define __pyx_n_u_format __pyx_string_tab[569]
#define __pyx_n_u_fromId __pyx_string_tab[570]
#define __pyx_n_u_func __pyx_string_tab[571]
#define __pyx_n_u_fundingRate __pyx_string_tab[572]
#define __pyx_n_u_futures_account __pyx_string_tab[573]
#define __pyx_n_u_futures_account_balance __pyx_string_tab[574]
#define __pyx_n_u_futures_account_trades __pyx_string_tab[575]
#define __pyx_n_u_futures_account_transfer __pyx_string_tab[576]
#define __pyx_n_u_futures_aggregate_trades __pyx_string_tab[577]
#define __pyx_n_u_futures_auto_cancel_all_open_ord __pyx_string_tab[578]
#define __pyx_n_u_futures_cancel_all_open_orders __pyx_string_tab[579]
#define __pyx_n_u_futures_cancel_order __pyx_string_tab[580]
#define __pyx_n_u_futures_cancel_orders __pyx_string_tab[581]
#define __pyx_n_u_futures_change_leverage __pyx_string_tab[582]
#define __pyx_n_u_futures_change_margin_type __pyx_string_tab[583]
#define __pyx_n_u_futures_change_position_margin __pyx_string_tab[584]
#define __pyx_n_u_futures_change_position_mode __pyx_string_tab[585]
#define __pyx_n_u_futures_coin_account __pyx_string_tab[586]
#define __pyx_n_u_futures_coin_account_balance __pyx_string_tab[587]
#define __pyx_n_u_futures_coin_account_trades __pyx_string_tab[588]
#define __pyx_n_u_futures_coin_aggregate_trades __pyx_string_tab[589]
#define __pyx_n_u_futures_coin_cancel_all_open_ord __pyx_string_tab[590]
#define __pyx_n_u_futures_coin_cancel_order __pyx_string_tab[591]
#define __pyx_n_u_futures_coin_cancel_orders __pyx_string_tab[592]
#define __pyx_n_u_futures_coin_change_leverage __pyx_string_tab[593]
#define __pyx_n_u_futures_coin_change_margin_type __pyx_string_tab[594]
#define __pyx_n_u_futures_coin_change_position_mar __pyx_string_tab[595]
#define __pyx_n_u_futures_coin_change_position_mod __pyx_string_tab[596]
#define __pyx_n_u_futures_coin_continous_klines __pyx_string_tab[597]
#define __pyx_n_u_futures_coin_create_order __pyx_string_tab[598]
#define __pyx_n_u_futures_coin_exchange_info __pyx_string_tab[599]
#define __pyx_n_u_futures_coin_funding_rate __pyx_string_tab[600]
#define __pyx_n_u_futures_coin_get_all_orders __pyx_string_tab[601]
#define __pyx_n_u_futures_coin_get_open_orders __pyx_string_tab[602]
#define __pyx_n_u_futures_coin_get_order __pyx_string_tab[603]
#define __pyx_n_u_futures_coin_get_position_mode __pyx_string_tab[604]
#define __pyx_n_u_futures_coin_historical_trades __pyx_string_tab[605]
#define __pyx_n_u_futures_coin_income_history __pyx_string_tab[606]
#define __pyx_n_u_futures_coin_index_price_klines __pyx_string_tab[607]
#define __pyx_n_u_futures_coin_klines __pyx_string_tab[608]
#define __pyx_n_u_futures_coin_leverage_bracket __pyx_string_tab[609]
#define __pyx_n_u_futures_coin_liquidation_orders __pyx_string_tab[610]
#define __pyx_n_u_futures_coin_mark_price __pyx_string_tab[611]
#define __pyx_n_u_futures_coin_mark_price_klines __pyx_string_tab[612]
#define __pyx_n_u_futures_coin_open_interest __pyx_string_tab[613]
#define __pyx_n_u_futures_coin_open_interest_hist __pyx_string_tab[614]
#define __pyx_n_u_futures_coin_order_book __pyx_string_tab[615]
#define __pyx_n_u_futures_coin_orderbook_ticker __pyx_string_tab[616]
#define __pyx_n_u_futures_coin_ping __pyx_string_tab[617]
#define __pyx_n_u_futures_coin_place_batch_order __pyx_string_tab[618]
#define __pyx_n_u_futures_coin_position_informatio __pyx_string_tab[619]
#define __pyx_n_u_futures_coin_position_margin_his __pyx_string_tab[620]
#define __pyx_n_u_futures_coin_recent_trades __pyx_string_tab[621]
#define __pyx_n_u_futures_coin_stream_close __pyx_string_tab[622]
#define __pyx_n_u_futures_coin_stream_get_listen_k __pyx_string_tab[623]
#define __pyx_n_u_futures_coin_stream_keepalive __pyx_string_tab[624]
#define __pyx_n_u_futures_coin_symbol_ticker __pyx_string_tab[625]
#define __pyx_n_u_futures_coin_ticker __pyx_string_tab[626]
#define __pyx_n_u_futures_coin_time __pyx_string_tab[627]
#define __pyx_n_u_futures_commission_rate __pyx_string_tab[628]
#define __pyx_n_u_futures_create_order __pyx_string_tab[629]
#define __pyx_n_u_futures_exchange_info __pyx_string_tab[630]
#define __pyx_n_u_futures_funding_rate __pyx_string_tab[631]
#define __pyx_n_u_futures_get_all_orders __pyx_string_tab[632]
#define __pyx_n_u_futures_get_open_orders __pyx_string_tab[633]
#define __pyx_n_u_futures_get_order __pyx_string_tab[634]
#define __pyx_n_u_futures_get_position_mode __pyx_string_tab[635]
#define __pyx_n_u_futures_historical_trades __pyx_string_tab[636]
#define __pyx_n_u_futures_income_history __pyx_string_tab[637]
#define __pyx_n_u_futures_klines __pyx_string_tab[638]
#define __pyx_n_u_futures_leverage_bracket __pyx_string_tab[639]
#define __pyx_n_u_futures_liquidation_orders __pyx_string_tab[640]
#define __pyx_n_u_futures_mark_price __pyx_string_tab[641]
#define __pyx_n_u_futures_open_interest __pyx_string_tab[642]
#define __pyx_n_u_futures_open_interest_hist __pyx_string_tab[643]
#define __pyx_n_u_futures_order_book __pyx_string_tab[644]
#define __pyx_n_u_futures_orderbook_ticker __pyx_string_tab[645]
#define __pyx_n_u_futures_ping __pyx_string_tab[646]
#define __pyx_n_u_futures_place_batch_order __pyx_string_tab[647]
#define __pyx_n_u_futures_position_information __pyx_string_tab[648]
#define __pyx_n_u_futures_position_margin_history __pyx_string_tab[649]
#define __pyx_n_u_futures_recent_trades __pyx_string_tab[650]
#define __pyx_n_u_futures_stream_close __pyx_string_tab[651]
#define __pyx_n_u_futures_stream_get_listen_key __pyx_string_tab[652]
#define __pyx_n_u_futures_stream_keepalive __pyx_string_tab[653]
#define __pyx_n_u_futures_symbol_ticker __pyx_string_tab[654]
#define __pyx_n_u_futures_ticker __pyx_string_tab[655]
#define __pyx_n_u_futures_time __pyx_string_tab[656]
#define __pyx_kp_u_futures_transfer __pyx_string_tab[657]
#define __pyx_kp_u_gc __pyx_string_tab[658]
#define __pyx_n_u_generate_signature __pyx_string_tab[659]
#define __pyx_n_u_genexpr __pyx_string_tab[660]
#define __pyx_n_u_get __pyx_string_tab[661]
#define __pyx_n_u_getLogger __pyx_string_tab[662]
#define __pyx_n_u_get_2 __pyx_string_tab[663]
#define __pyx_n_u_get_account __pyx_string_tab[664]
#define __pyx_n_u_get_account_api_trading_status __pyx_string_tab[665]
#define __pyx_n_u_get_account_snapshot __pyx_string_tab[666]
#define __pyx_n_u_get_account_status __pyx_string_tab[667]
#define __pyx_n_u_get_aggregate_trades __pyx_string_tab[668]
#define __pyx_n_u_get_all_coins_info __pyx_string_tab[669]
#define __pyx_n_u_get_all_isolated_margin_symbols __pyx_string_tab[670]
#define __pyx_n_u_get_all_margin_orders __pyx_string_tab[671]
#define __pyx_n_u_get_all_orders __pyx_string_tab[672]
#define __pyx_n_u_get_all_tickers __pyx_string_tab[673]
#define __pyx_n_u_get_asset_balance __pyx_string_tab[674]
#define __pyx_n_u_get_asset_details __pyx_string_tab[675]
#define __pyx_n_u_get_asset_dividend_history __pyx_string_tab[676]
#define __pyx_n_u_get_avg_price __pyx_string_tab[677]
#define __pyx_n_u_get_bnb_burn_spot_margin __pyx_string_tab[678]
#define __pyx_n_u_get_deposit_address __pyx_string_tab[679]
#define __pyx_n_u_get_deposit_history __pyx_string_tab[680]
#define __pyx_n_u_get_dust_log __pyx_string_tab[681]
#define __pyx_n_u_get_earliest_valid_timestamp __pyx_string_tab[682]
#define __pyx_n_u_get_exchange_info __pyx_string_tab[683]
#define __pyx_n_u_get_fixed_activity_project_list __pyx_string_tab[684]
#define __pyx_n_u_get_historical_klines __pyx_string_tab[685]
#define __pyx_n_u_get_historical_klines_generator __pyx_string_tab[686]
#define __pyx_n_u_get_historical_trades __pyx_string_tab[687]
#define __pyx_n_u_get_isolated_margin_account __pyx_string_tab[688]
#define __pyx_n_u_get_isolated_margin_symbol __pyx_string_tab[689]
#define __pyx_n_u_get_klines __pyx_string_tab[690]
#define __pyx_n_u_get_latest_release_info __pyx_string_tab[691]
#define __pyx_n_u_get_latest_version __pyx_string_tab[692]
#define __pyx_n_u_get_lending_account __pyx_string_tab[693]
#define __pyx_n_u_get_lending_daily_quota_left __pyx_string_tab[694]
#define __pyx_n_u_get_lending_daily_redemption_quo __pyx_string_tab[695]
#define __pyx_n_u_get_lending_interest_history __pyx_string_tab[696]
#define __pyx_n_u_get_lending_position __pyx_string_tab[697]
#define __pyx_n_u_get_lending_product_list __pyx_string_tab[698]
#define __pyx_n_u_get_lending_purchase_history __pyx_string_tab[699]
#define __pyx_n_u_get_lending_redemption_history __pyx_string_tab[700]
#define __pyx_n_u_get_margin_account __pyx_string_tab[701]
#define __pyx_n_u_get_margin_asset __pyx_string_tab[702]
#define __pyx_n_u_get_margin_loan_details __pyx_string_tab[703]
#define __pyx_n_u_get_margin_oco_order __pyx_string_tab[704]
#define __pyx_n_u_get_margin_order __pyx_string_tab[705]
#define __pyx_n_u_get_margin_price_index __pyx_string_tab[706]
#define __pyx_n_u_get_margin_repay_details __pyx_string_tab[707]
#define __pyx_n_u_get_margin_symbol __pyx_string_tab[708]
#define __pyx_n_u_get_margin_trades __pyx_string_tab[709]
#define __pyx_n_u_get_max_margin_loan __pyx_string_tab[710]
#define __pyx_n_u_get_max_margin_transfer __pyx_string_tab[711]
#define __pyx_n_u_get_my_trades __pyx_string_tab[712]
#define __pyx_n_u_get_open_isolated_margin_orders __pyx_string_tab[713]
#define __pyx_n_u_get_open_margin_oco_orders __pyx_string_tab[714]
#define __pyx_n_u_get_open_margin_orders __pyx_string_tab[715]
#define __pyx_n_u_get_open_orders __pyx_string_tab[716]
#define __pyx_n_u_get_order __pyx_string_tab[717]
#define __pyx_n_u_get_order_book __pyx_string_tab[718]
#define __pyx_n_u_get_orderbook_ticker __pyx_string_tab[719]
#define __pyx_n_u_get_orderbook_tickers __pyx_string_tab[720]
#define __pyx_n_u_get_products __pyx_string_tab[721]
#define __pyx_n_u_get_recent_trades __pyx_string_tab[722]
#define __pyx_n_u_get_server_time __pyx_string_tab[723]
#define __pyx_n_u_get_sub_account_assets __pyx_string_tab[724]
#define __pyx_n_u_get_sub_account_futures_transfer __pyx_string_tab[725]
#define __pyx_n_u_get_sub_account_list __pyx_string_tab[726]
#define __pyx_n_u_get_sub_account_transfer_history __pyx_string_tab[727]
#define __pyx_n_u_get_subaccount_deposit_address __pyx_string_tab[728]
#define __pyx_n_u_get_subaccount_deposit_history __pyx_string_tab[729]
#define __pyx_n_u_get_subaccount_futures_details __pyx_string_tab[730]
#define __pyx_n_u_get_subaccount_futures_margin_st __pyx_string_tab[731]
#define __pyx_n_u_get_subaccount_futures_positionr __pyx_string_tab[732]
#define __pyx_n_u_get_subaccount_futures_summary __pyx_string_tab[733]
#define __pyx_n_u_get_subaccount_margin_details __pyx_string_tab[734]
#define __pyx_n_u_get_subaccount_margin_summary __pyx_string_tab[735]
#define __pyx_n_u_get_subaccount_transfer_history __pyx_string_tab[736]
#define __pyx_n_u_get_symbol_info __pyx_string_tab[737]
#define __pyx_n_u_get_symbol_ticker __pyx_string_tab[738]
#define __pyx_n_u_get_system_status __pyx_string_tab[739]
#define __pyx_n_u_get_ticker __pyx_string_tab[740]
#define __pyx_n_u_get_trade_fee __pyx_string_tab[741]
#define __pyx_n_u_get_universal_transfer_history __pyx_string_tab[742]
#define __pyx_n_u_get_used_weight __pyx_string_tab[743]
#define __pyx_n_u_get_user_agent __pyx_string_tab[744]
#define __pyx_n_u_get_version __pyx_string_tab[745]
#define __pyx_n_u_get_withdraw_history __pyx_string_tab[746]
#define __pyx_n_u_get_withdraw_history_id __pyx_string_tab[747]
#define __pyx_n_u_handle_response __pyx_string_tab[748]
#define __pyx_n_u_has_signature __pyx_string_tab[749]
#define __pyx_n_u_hashlib __pyx_string_tab[750]
#define __pyx_n_u_headers __pyx_string_tab[751]
#define __pyx_n_u_helpers __pyx_string_tab[752]
#define __pyx_n_u_hexdigest __pyx_string_tab[753]
#define __pyx_n_u_historicalTrades __pyx_string_tab[754]
#define __pyx_n_u_hmac __pyx_string_tab[755]
#define __pyx_n_u_http __pyx_string_tab[756]
#define __pyx_n_u_https __pyx_string_tab[757]
#define __pyx_kp_u_https_api_binance_api __pyx_string_tab[758]
#define __pyx_kp_u_https_api_binance_com_api __pyx_string_tab[759]
#define __pyx_kp_u_https_api_binance_com_sapi __pyx_string_tab[760]
#define __pyx_kp_u_https_api_binance_sapi __pyx_string_tab[761]
#define __pyx_kp_u_https_api_binance_us_api __pyx_string_tab[762]
#define __pyx_kp_u_https_api_binance_us_sapi __pyx_string_tab[763]
#define __pyx_kp_u_https_api_github_com_repos_LUCIT __pyx_string_tab[764]
#define __pyx_kp_u_https_api_trbinance_com_sapi __pyx_string_tab[765]
#define __pyx_kp_u_https_dapi_binance_com_futures_d __pyx_string_tab[766]
#define __pyx_kp_u_https_dapi_binance_futures_data __pyx_string_tab[767]
#define __pyx_kp_u_https_dapi_binance_us_futures_da __pyx_string_tab[768]
#define __pyx_kp_u_https_dapi_trbinance_com_futures __pyx_string_tab[769]
#define __pyx_kp_u_https_fapi_binance_com_fapi __pyx_string_tab[770]
#define __pyx_kp_u_https_fapi_binance_com_futures_d __pyx_string_tab[771]
#define __pyx_kp_u_https_fapi_binance_fapi __pyx_string_tab[772]
#define __pyx_kp_u_https_fapi_binance_futures_data __pyx_string_tab[773]
#define __pyx_kp_u_https_fapi_binance_us_fapi __pyx_string_tab[774]
#define __pyx_kp_u_https_fapi_binance_us_futures_da __pyx_string_tab[775]
#define __pyx_kp_u_https_fapi_trbinance_com_fapi __pyx_string_tab[776]
#define __pyx_kp_u_https_fapi_trbinance_com_futures __pyx_string_tab[777]
#define __pyx_kp_u_https_testnet_binance_vision __pyx_string_tab[778]
#define __pyx_kp_u_https_testnet_binance_vision_api __pyx_string_tab[779]
#define __pyx_kp_u_https_testnet_binancefuture_com __pyx_string_tab[780]
#define __pyx_kp_u_https_testnet_binancefuture_com_2 __pyx_string_tab[781]
#define __pyx_kp_u_https_testnet_binancefuture_com_3 __pyx_string_tab[782]
#define __pyx_kp_u_https_www_binance __pyx_string_tab[783]
#define __pyx_kp_u_https_www_binance_com __pyx_string_tab[784]
#define __pyx_kp_u_https_www_binance_us __pyx_string_tab[785]
#define __pyx_kp_u_https_www_trbinance_com __pyx_string_tab[786]
#define __pyx_kp_u_https_www_trbinance_com_api __pyx_string_tab[787]
#define __pyx_n_u_i __pyx_string_tab[788]
#define __pyx_n_u_id __pyx_string_tab[789]
#define __pyx_n_u_idx __pyx_string_tab[790]
#define __pyx_n_u_income __pyx_string_tab[791]
#define __pyx_n_u_indexPriceKlines __pyx_string_tab[792]
#define __pyx_n_u_info __pyx_string_tab[793]
#define __pyx_n_u_init __pyx_string_tab[794]
#define __pyx_n_u_init_2 __pyx_string_tab[795]
#define __pyx_n_u_init_session __pyx_string_tab[796]
#define __pyx_n_u_initializing __pyx_string_tab[797]
#define __pyx_n_u_installed_version __pyx_string_tab[798]
#define __pyx_n_u_int __pyx_string_tab[799]
#define __pyx_n_u_interval __pyx_string_tab[800]
#define __pyx_n_u_interval_to_milliseconds __pyx_string_tab[801]
#define __pyx_kp_u_is_available_please_consider_up __pyx_string_tab[802]
#define __pyx_n_u_is_coroutine __pyx_string_tab[803]
#define __pyx_n_u_is_update_availabe __pyx_string_tab[804]
#define __pyx_kp_u_isenabled __pyx_string_tab[805]
#define __pyx_n_u_isolated_margin_stream_close __pyx_string_tab[806]
#define __pyx_n_u_isolated_margin_stream_get_liste __pyx_string_tab[807]
#define __pyx_n_u_isolated_margin_stream_keepalive __pyx_string_tab[808]
#define __pyx_n_u_item __pyx_string_tab[809]
#define __pyx_n_u_itemgetter __pyx_string_tab[810]
#define __pyx_n_u_items __pyx_string_tab[811]
#define __pyx_n_u_json __pyx_string_tab[812]
#define __pyx_n_u_key __pyx_string_tab[813]
#define __pyx_n_u_kline __pyx_string_tab[814]
#define __pyx_n_u_klines __pyx_string_tab[815]
#define __pyx_n_u_kwargs __pyx_string_tab[816]
#define __pyx_n_u_l __pyx_string_tab[817]
#define __pyx_n_u_last_id __pyx_string_tab[818]
#define __pyx_n_u_last_update_check_github __pyx_string_tab[819]
#define __pyx_n_u_latest_release_info __pyx_string_tab[820]
#define __pyx_kp_u_lending_daily_product_list __pyx_string_tab[821]
#define __pyx_kp_u_lending_daily_purchase __pyx_string_tab[822]
#define __pyx_kp_u_lending_daily_redeem __pyx_string_tab[823]
#define __pyx_kp_u_lending_daily_token_position __pyx_string_tab[824]
#define __pyx_kp_u_lending_daily_userLeftQuota __pyx_string_tab[825]
#define __pyx_kp_u_lending_daily_userRedemptionQuot __pyx_string_tab[826]
#define __pyx_kp_u_lending_positionChanged __pyx_string_tab[827]
#define __pyx_kp_u_lending_project_list __pyx_string_tab[828]
#define __pyx_kp_u_lending_union_account __pyx_string_tab[829]
#define __pyx_kp_u_lending_union_interestHistory __pyx_string_tab[830]
#define __pyx_kp_u_lending_union_purchaseRecord __pyx_string_tab[831]
#define __pyx_kp_u_lending_union_redemptionRecord __pyx_string_tab[832]
#define __pyx_n_u_leverage __pyx_string_tab[833]
#define __pyx_n_u_leverageBracket __pyx_string_tab[834]
#define __pyx_n_u_limit __pyx_string_tab[835]
#define __pyx_n_u_listenKey __pyx_string_tab[836]
#define __pyx_n_u_logger __pyx_string_tab[837]
#define __pyx_n_u_logger_2 __pyx_string_tab[838]
#define __pyx_n_u_logging __pyx_string_tab[839]
#define __pyx_n_u_lower __pyx_string_tab[840]
#define __pyx_n_u_m __pyx_string_tab[841]
#define __pyx_n_u_main __pyx_string_tab[842]
#define __pyx_n_u_make_subaccount_futures_transfer __pyx_string_tab[843]
#define __pyx_n_u_make_subaccount_margin_transfer __pyx_string_tab[844]
#define __pyx_n_u_make_subaccount_to_master_transf __pyx_string_tab[845]
#define __pyx_n_u_make_subaccount_to_subaccount_tr __pyx_string_tab[846]
#define __pyx_n_u_make_universal_transfer __pyx_string_tab[847]
#define __pyx_n_u_marginType __pyx_string_tab[848]
#define __pyx_kp_u_margin_account __pyx_string_tab[849]
#define __pyx_kp_u_margin_allOrderList __pyx_string_tab[850]
#define __pyx_kp_u_margin_allOrders __pyx_string_tab[851]
#define __pyx_kp_u_margin_asset __pyx_string_tab[852]
#define __pyx_kp_u_margin_isolated_account __pyx_string_tab[853]
#define __pyx_kp_u_margin_isolated_allPairs __pyx_string_tab[854]
#define __pyx_kp_u_margin_isolated_create __pyx_string_tab[855]
#define __pyx_kp_u_margin_isolated_pair __pyx_string_tab[856]
#define __pyx_kp_u_margin_isolated_transfer __pyx_string_tab[857]
#define __pyx_kp_u_margin_loan __pyx_string_tab[858]
#define __pyx_kp_u_margin_maxBorrowable __pyx_string_tab[859]
#define __pyx_kp_u_margin_maxTransferable __pyx_string_tab[860]
#define __pyx_kp_u_margin_myTrades __pyx_string_tab[861]
#define __pyx_kp_u_margin_openOrders __pyx_string_tab[862]
#define __pyx_kp_u_margin_order __pyx_string_tab[863]
#define __pyx_kp_u_margin_orderList __pyx_string_tab[864]
#define __pyx_kp_u_margin_order_oco __pyx_string_tab[865]
#define __pyx_kp_u_margin_pair __pyx_string_tab[866]
#define __pyx_kp_u_margin_priceIndex __pyx_string_tab[867]
#define __pyx_kp_u_margin_repay __pyx_string_tab[868]
#define __pyx_n_u_margin_stream_close __pyx_string_tab[869]
#define __pyx_n_u_margin_stream_get_listen_key __pyx_string_tab[870]
#define __pyx_n_u_margin_stream_keepalive __pyx_string_tab[871]
#define __pyx_kp_u_margin_transfer __pyx_string_tab[872]
#define __pyx_n_u_markPriceKlines __pyx_string_tab[873]
#define __pyx_n_u_metaclass __pyx_string_tab[874]
#define __pyx_n_u_method __pyx_string_tab[875]
#define __pyx_n_u_module __pyx_string_tab[876]
#define __pyx_n_u_mro_entries __pyx_string_tab[877]
#define __pyx_n_u_msg __pyx_string_tab[878]
#define __pyx_n_u_myTrades __pyx_string_tab[879]
#define __pyx_n_u_name __pyx_string_tab[880]
#define __pyx_n_u_name_2 __pyx_string_tab[881]
#define __pyx_n_u_new __pyx_string_tab[882]
#define __pyx_n_u_new_transfer_history __pyx_string_tab[883]
#define __pyx_n_u_next __pyx_string_tab[884]
#define __pyx_n_u_null_args __pyx_string_tab[885]
#define __pyx_n_u_o __pyx_string_tab[886]
#define __pyx_n_u_object __pyx_string_tab[887]
#define __pyx_n_u_openInterest __pyx_string_tab[888]
#define __pyx_n_u_openInterestHist __pyx_string_tab[889]
#define __pyx_n_u_openOrders __pyx_string_tab[890]
#define __pyx_n_u_operator __pyx_string_tab[891]
#define __pyx_n_u_options __pyx_string_tab[892]
#define __pyx_n_u_order __pyx_string_tab[893]
#define __pyx_n_u_order_limit __pyx_string_tab[894]
#define __pyx_n_u_order_limit_buy __pyx_string_tab[895]
#define __pyx_n_u_order_limit_sell __pyx_string_tab[896]
#define __pyx_n_u_order_market __pyx_string_tab[897]
#define __pyx_n_u_order_market_buy __pyx_string_tab[898]
#define __pyx_n_u_order_market_sell __pyx_string_tab[899]
#define __pyx_kp_u_order_oco __pyx_string_tab[900]
#define __pyx_n_u_order_oco_buy __pyx_string_tab[901]
#define __pyx_n_u_order_oco_sell __pyx_string_tab[902]
#define __pyx_n_u_order_params __pyx_string_tab[903]
#define __pyx_kp_u_order_test __pyx_string_tab[904]
#define __pyx_n_u_ordered_data __pyx_string_tab[905]
#define __pyx_n_u_output __pyx_string_tab[906]
#define __pyx_n_u_output_data __pyx_string_tab[907]
#define __pyx_n_u_p __pyx_string_tab[908]
#define __pyx_n_u_params __pyx_string_tab[909]
#define __pyx_n_u_path __pyx_string_tab[910]
#define __pyx_n_u_ping __pyx_string_tab[911]
#define __pyx_n_u_platform __pyx_string_tab[912]
#define __pyx_n_u_pop __pyx_string_tab[913]
#define __pyx_n_u_positionMargin __pyx_string_tab[914]
#define __pyx_kp_u_positionMargin_history __pyx_string_tab[915]
#define __pyx_n_u_positionRisk __pyx_string_tab[916]
#define __pyx_kp_u_positionSide_dual __pyx_string_tab[917]
#define __pyx_n_u_post __pyx_string_tab[918]
#define __pyx_n_u_post_2 __pyx_string_tab[919]
#define __pyx_n_u_premiumIndex __pyx_string_tab[920]
#define __pyx_n_u_prepare __pyx_string_tab[921]
#define __pyx_n_u_print __pyx_string_tab[922]
#define __pyx_n_u_products __pyx_string_tab[923]
#define __pyx_n_u_proxies __pyx_string_tab[924]
#define __pyx_n_u_purchase_lending_product __pyx_string_tab[925]
#define __pyx_n_u_put __pyx_string_tab[926]
#define __pyx_n_u_put_2 __pyx_string_tab[927]
#define __pyx_kp_u_python __pyx_string_tab[928]
#define __pyx_n_u_python_version __pyx_string_tab[929]
#define __pyx_n_u_q __pyx_string_tab[930]
#define __pyx_n_u_qualname __pyx_string_tab[931]
#define __pyx_n_u_query_string __pyx_string_tab[932]
#define __pyx_n_u_query_subaccount_spot_summary __pyx_string_tab[933]
#define __pyx_n_u_query_universal_transfer_history __pyx_string_tab[934]
#define __pyx_n_u_raw_data __pyx_string_tab[935]
#define __pyx_n_u_redeem_lending_product __pyx_string_tab[936]
#define __pyx_n_u_release __pyx_string_tab[937]
#define __pyx_n_u_repay_margin_loan __pyx_string_tab[938]
#define __pyx_n_u_replace __pyx_string_tab[939]
#define __pyx_n_u_request __pyx_string_tab[940]
#define __pyx_kp_u_request_Got_api_key_and_api_sec __pyx_string_tab[941]
#define __pyx_n_u_request_api __pyx_string_tab[942]
#define __pyx_n_u_request_futures_api __pyx_string_tab[943]
#define __pyx_n_u_request_futures_coin_api __pyx_string_tab[944]
#define __pyx_n_u_request_futures_coin_data_api __pyx_string_tab[945]
#define __pyx_n_u_request_futures_data_api __pyx_string_tab[946]
#define __pyx_n_u_request_margin_api __pyx_string_tab[947]
#define __pyx_n_u_request_socks5_proxies __pyx_string_tab[948]
#define __pyx_n_u_request_website __pyx_string_tab[949]
#define __pyx_n_u_requests __pyx_string_tab[950]
#define __pyx_n_u_requests_params __pyx_string_tab[951]
#define __pyx_n_u_requests_params_2 __pyx_string_tab[952]
#define __pyx_n_u_res __pyx_string_tab[953]
#define __pyx_n_u_respond __pyx_string_tab[954]
#define __pyx_n_u_response __pyx_string_tab[955]
#define __pyx_n_u_result __pyx_string_tab[956]
#define __pyx_n_u_return __pyx_string_tab[957]
#define __pyx_n_u_reversed __pyx_string_tab[958]
#define __pyx_n_u_save_used_weight __pyx_string_tab[959]
#define __pyx_n_u_self __pyx_string_tab[960]
#define __pyx_kp_u_self_API_URL __pyx_string_tab[961]
#define __pyx_kp_u_self_FUTURES_COIN_DATA_URL __pyx_string_tab[962]
#define __pyx_kp_u_self_FUTURES_COIN_URL __pyx_string_tab[963]
#define __pyx_kp_u_self_FUTURES_DATA_URL __pyx_string_tab[964]
#define __pyx_kp_u_self_FUTURES_URL __pyx_string_tab[965]
#define __pyx_kp_u_self_MARGIN_API_URL __pyx_string_tab[966]
#define __pyx_kp_u_self_WEBSITE_URL __pyx_string_tab[967]
#define __pyx_n_u_send __pyx_string_tab[968]
#define __pyx_n_u_serverTime __pyx_string_tab[969]
#define __pyx_n_u_session __pyx_string_tab[970]
#define __pyx_n_u_set_name __pyx_string_tab[971]
#define __pyx_n_u_sha256 __pyx_string_tab[972]
#define __pyx_n_u_side __pyx_string_tab[973]
#define __pyx_n_u_signature __pyx_string_tab[974]
#define __pyx_n_u_signed __pyx_string_tab[975]
#define __pyx_n_u_sigterm __pyx_string_tab[976]
#define __pyx_n_u_sleep __pyx_string_tab[977]
#define __pyx_kp_u_socks5 __pyx_string_tab[978]
#define __pyx_n_u_socks5_proxy_address __pyx_string_tab[979]
#define __pyx_n_u_socks5_proxy_pass __pyx_string_tab[980]
#define __pyx_n_u_socks5_proxy_port __pyx_string_tab[981]
#define __pyx_n_u_socks5_proxy_server __pyx_string_tab[982]
#define __pyx_n_u_socks5_proxy_ssl_verification __pyx_string_tab[983]
#define __pyx_n_u_socks5_proxy_user __pyx_string_tab[984]
#define __pyx_n_u_socks_proxy_uri __pyx_string_tab[985]
#define __pyx_n_u_sort __pyx_string_tab[986]
#define __pyx_n_u_spec __pyx_string_tab[987]
#define __pyx_n_u_startTime __pyx_string_tab[988]
#define __pyx_n_u_start_str __pyx_string_tab[989]
#define __pyx_kp_u_start_time_and_last_id_may_not_b __pyx_string_tab[990]
#define __pyx_n_u_start_ts __pyx_string_tab[991]
#define __pyx_kp_u_started __pyx_string_tab[992]
#define __pyx_n_u_staticmethod __pyx_string_tab[993]
#define __pyx_n_u_status __pyx_string_tab[994]
#define __pyx_n_u_status_code __pyx_string_tab[995]
#define __pyx_n_u_stop_manager __pyx_string_tab[996]
#define __pyx_n_u_str __pyx_string_tab[997]
#define __pyx_n_u_stream_close __pyx_string_tab[998]
#define __pyx_n_u_stream_get_listen_key __pyx_string_tab[999]
#define __pyx_n_u_stream_keepalive __pyx_string_tab[1000]
#define __pyx_n_u_strptime __pyx_string_tab[1001]
#define __pyx_kp_u_sub_account_assets __pyx_string_tab[1002]
#define __pyx_kp_u_sub_account_futures_account __pyx_string_tab[1003]
#define __pyx_kp_u_sub_account_futures_accountSumma __pyx_string_tab[1004]
#define __pyx_kp_u_sub_account_futures_enable __pyx_string_tab[1005]
#define __pyx_kp_u_sub_account_futures_internalTran __pyx_string_tab[1006]
#define __pyx_kp_u_sub_account_futures_positionRisk __pyx_string_tab[1007]
#define __pyx_kp_u_sub_account_futures_transfer __pyx_string_tab[1008]
#define __pyx_kp_u_sub_account_list __pyx_string_tab[1009]
#define __pyx_kp_u_sub_account_margin_account __pyx_string_tab[1010]
#define __pyx_kp_u_sub_account_margin_accountSummar __pyx_string_tab[1011]
#define __pyx_kp_u_sub_account_margin_enable __pyx_string_tab[1012]
#define __pyx_kp_u_sub_account_margin_transfer __pyx_string_tab[1013]
#define __pyx_kp_u_sub_account_spotSummary __pyx_string_tab[1014]
#define __pyx_kp_u_sub_account_status __pyx_string_tab[1015]
#define __pyx_kp_u_sub_account_sub_transfer_history __pyx_string_tab[1016]
#define __pyx_kp_u_sub_account_transfer_subToMaster __pyx_string_tab[1017]
#define __pyx_kp_u_sub_account_transfer_subToSub __pyx_string_tab[1018]
#define __pyx_kp_u_sub_account_transfer_subUserHist __pyx_string_tab[1019]
#define __pyx_kp_u_sub_account_universalTransfer __pyx_string_tab[1020]
#define __pyx_n_u_success __pyx_string_tab[1021]
#define __pyx_n_u_symbol __pyx_string_tab[1022]
#define __pyx_n_u_symbols __pyx_string_tab[1023]
#define __pyx_n_u_system __pyx_string_tab[1024]
#define __pyx_kp_u_system_status __pyx_string_tab[1025]
#define __pyx_n_u_t __pyx_string_tab[1026]
#define __pyx_n_u_tag_name __pyx_string_tab[1027]
#define __pyx_n_u_temp_data __pyx_string_tab[1028]
#define __pyx_n_u_test __pyx_string_tab[1029]
#define __pyx_n_u_text __pyx_string_tab[1030]
#define __pyx_n_u_throw __pyx_string_tab[1031]
#define __pyx_n_u_throw_exception __pyx_string_tab[1032]
#define __pyx_kp_u_ticker_24hr __pyx_string_tab[1033]
#define __pyx_kp_u_ticker_allForceOrders __pyx_string_tab[1034]
#define __pyx_kp_u_ticker_bookTicker __pyx_string_tab[1035]
#define __pyx_kp_u_ticker_openInterest __pyx_string_tab[1036]
#define __pyx_kp_u_ticker_price __pyx_string_tab[1037]
#define __pyx_n_u_time __pyx_string_tab[1038]
#define __pyx_n_u_timeInForce __pyx_string_tab[1039]
#define __pyx_n_u_timeframe __pyx_string_tab[1040]
#define __pyx_n_u_timeout __pyx_string_tab[1041]
#define __pyx_n_u_timestamp __pyx_string_tab[1042]
#define __pyx_n_u_timestamp_offset __pyx_string_tab[1043]
#define __pyx_n_u_tld __pyx_string_tab[1044]
#define __pyx_kp_u_tld_2 __pyx_string_tab[1045]
#define __pyx_n_u_toggle_bnb_burn_spot_margin __pyx_string_tab[1046]
#define __pyx_n_u_trades __pyx_string_tab[1047]
#define __pyx_n_u_transFrom __pyx_string_tab[1048]
#define __pyx_n_u_transTo __pyx_string_tab[1049]
#define __pyx_n_u_transfer_dust __pyx_string_tab[1050]
#define __pyx_n_u_transfer_history __pyx_string_tab[1051]
#define __pyx_n_u_transfer_isolated_margin_to_spot __pyx_string_tab[1052]
#define __pyx_n_u_transfer_margin_to_spot __pyx_string_tab[1053]
#define __pyx_n_u_transfer_spot_to_isolated_margin __pyx_string_tab[1054]
#define __pyx_n_u_transfer_spot_to_margin __pyx_string_tab[1055]
#define __pyx_kp_u_trbinance_com __pyx_string_tab[1056]
#define __pyx_n_u_type __pyx_string_tab[1057]
#define __pyx_n_u_typing __pyx_string_tab[1058]
#define __pyx_kp_u_unicorn_binance_rest_api __pyx_string_tab[1059]
#define __pyx_n_u_unicorn_binance_rest_api_2 __pyx_string_tab[1060]
#define __pyx_n_u_unicorn_binance_rest_api_manager __pyx_string_tab[1061]
#define __pyx_kp_u_unicorn_binance_rest_api_manager_2 __pyx_string_tab[1062]
#define __pyx_n_u_universal_transfer __pyx_string_tab[1063]
#define __pyx_n_u_unknown __pyx_string_tab[1064]
#define __pyx_n_u_update __pyx_string_tab[1065]
#define __pyx_n_u_update_msg __pyx_string_tab[1066]
#define __pyx_n_u_upper __pyx_string_tab[1067]
#define __pyx_n_u_uri __pyx_string_tab[1068]
#define __pyx_n_u_url __pyx_string_tab[1069]
#define __pyx_n_u_urlencode __pyx_string_tab[1070]
#define __pyx_n_u_urllib_parse __pyx_string_tab[1071]
#define __pyx_n_u_used_weight __pyx_string_tab[1072]
#define __pyx_n_u_userDataStream __pyx_string_tab[1073]
#define __pyx_kp_u_userDataStream_isolated __pyx_string_tab[1074]
#define __pyx_n_u_userTrades __pyx_string_tab[1075]
#define __pyx_n_u_user_agent __pyx_string_tab[1076]
#define __pyx_kp_u_utf_8 __pyx_string_tab[1077]
#define __pyx_n_u_v __pyx_string_tab[1078]
#define __pyx_n_u_v1 __pyx_string_tab[1079]
#define __pyx_n_u_v2 __pyx_string_tab[1080]
#define __pyx_n_u_v3 __pyx_string_tab[1081]
#define __pyx_n_u_value __pyx_string_tab[1082]
#define __pyx_n_u_verify __pyx_string_tab[1083]
#define __pyx_n_u_version __pyx_string_tab[1084]
#define __pyx_n_u_version_2 __pyx_string_tab[1085]
#define __pyx_n_u_warn_on_update __pyx_string_tab[1086]
#define __pyx_n_u_warning __pyx_string_tab[1087]
#define __pyx_n_u_weight __pyx_string_tab[1088]
#define __pyx_n_u_withdraw __pyx_string_tab[1089]
#define __pyx_n_u_withdrawList __pyx_string_tab[1090]
#define __pyx_n_u_withdraw_id __pyx_string_tab[1091]
/* #### Code section: module_state_clear ### */
#if CYTHON_USE_MODULE_STATE
static CYTHON_SMALL_CODE int __pyx_m_clear(PyObject *m) {
  __pyx_mstatetype *clear_module_state = __Pyx_PyModule_GetState(m);
  if (!clear_module_state) return 0;
  Py_CLEAR(clear_module_state->__pyx_d);
  Py_CLEAR(clear_module_state->__pyx_b);
  Py_CLEAR(clear_module_state->__pyx_cython_runtime);
  Py_CLEAR(clear_module_state->__pyx_empty_tuple);
  Py_CLEAR(clear_module_state->__pyx_empty_bytes);
  Py_CLEAR(clear_module_state->__pyx_empty_unicode);
  #ifdef __Pyx_CyFunction_USED
  Py_CLEAR(clear_module_state->__pyx_CyFunctionType);
  #endif
  #ifdef __Pyx_FusedFunction_USED
  Py_CLEAR(clear_module_state->__pyx_FusedFunctionType);
  #endif
  #if CYTHON_PEP489_MULTI_PHASE_INIT
  __Pyx_State_RemoveModule(NULL);
  #endif
  Py_CLEAR(clear_module_state->__pyx_ptype_24unicorn_binance_rest_api_7manager___pyx_defaults);
  Py_CLEAR(clear_module_state->__pyx_type_24unicorn_binance_rest_api_7manager___pyx_defaults);
  Py_CLEAR(clear_module_state->__pyx_ptype_24unicorn_binance_rest_api_7manager___pyx_scope_struct__genexpr);
  Py_CLEAR(clear_module_state->__pyx_type_24unicorn_binance_rest_api_7manager___pyx_scope_struct__genexpr);
  Py_CLEAR(clear_module_state->__pyx_ptype_24unicorn_binance_rest_api_7manager___pyx_scope_struct_1_aggregate_trade_iter);
  Py_CLEAR(clear_module_state->__pyx_type_24unicorn_binance_rest_api_7manager___pyx_scope_struct_1_aggregate_trade_iter);
  Py_CLEAR(clear_module_state->__pyx_ptype_24unicorn_binance_rest_api_7manager___pyx_scope_struct_2_get_historical_klines_generator);
  Py_CLEAR(clear_module_state->__pyx_type_24unicorn_binance_rest_api_7manager___pyx_scope_struct_2_get_historical_klines_generator);
  for (int i=0; i<3; ++i) { Py_CLEAR(clear_module_state->__pyx_slice[i]); }
  for (int i=0; i<167; ++i) { Py_CLEAR(clear_module_state->__pyx_tuple[i]); }
  for (int i=0; i<255; ++i) { Py_CLEAR(clear_module_state->__pyx_codeobj_tab[i]); }
  for (int i=0; i<1092; ++i) { Py_CLEAR(clear_module_state->__pyx_string_tab[i]); }
  Py_CLEAR(clear_module_state->__pyx_int_0);
  Py_CLEAR(clear_module_state->__pyx_int_1);
  Py_CLEAR(clear_module_state->__pyx_int_2);
  Py_CLEAR(clear_module_state->__pyx_int_3);
  Py_CLEAR(clear_module_state->__pyx_int_10);
  Py_CLEAR(clear_module_state->__pyx_int_12);
  Py_CLEAR(clear_module_state->__pyx_int_200);
  Py_CLEAR(clear_module_state->__pyx_int_300);
  Py_CLEAR(clear_module_state->__pyx_int_500);
  Py_CLEAR(clear_module_state->__pyx_int_1000);
  Py_CLEAR(clear_module_state->__pyx_int_3600);
  Py_CLEAR(clear_module_state->__pyx_int_3600000);
  Py_CLEAR(clear_module_state->__pyx_int_neg_4);
  return 0;
}
#endif
/* #### Code section: module_state_traverse ### */
#if CYTHON_USE_MODULE_STATE
static CYTHON_SMALL_CODE int __pyx_m_traverse(PyObject *m, visitproc visit, void *arg) {
  __pyx_mstatetype *traverse_module_state = __Pyx_PyModule_GetState(m);
  if (!traverse_module_state) return 0;
  Py_VISIT(traverse_module_state->__pyx_d);
  Py_VISIT(traverse_module_state->__pyx_b);
  Py_VISIT(traverse_module_state->__pyx_cython_runtime);
  __Pyx_VISIT_CONST(traverse_module_state->__pyx_empty_tuple);
  __Pyx_VISIT_CONST(traverse_module_state->__pyx_empty_bytes);
  __Pyx_VISIT_CONST(traverse_module_state->__pyx_empty_unicode);
  #ifdef __Pyx_CyFunction_USED
  Py_VISIT(traverse_module_state->__pyx_CyFunctionType);
  #endif
  #ifdef __Pyx_FusedFunction_USED
  Py_VISIT(traverse_module_state->__pyx_FusedFunctionType);
  #endif
  Py_VISIT(traverse_module_state->__pyx_ptype_24unicorn_binance_rest_api_7manager___pyx_defaults);
  Py_VISIT(traverse_module_state->__pyx_type_24unicorn_binance_rest_api_7manager___pyx_defaults);
  Py_VISIT(traverse_module_state->__pyx_ptype_24unicorn_binance_rest_api_7manager___pyx_scope_struct__genexpr);
  Py_VISIT(traverse_module_state->__pyx_type_24unicorn_binance_rest_api_7manager___pyx_scope_struct__genexpr);
  Py_VISIT(traverse_module_state->__pyx_ptype_24unicorn_binance_rest_api_7manager___pyx_scope_struct_1_aggregate_trade_iter);
  Py_VISIT(traverse_module_state->__pyx_type_24unicorn_binance_rest_api_7manager___pyx_scope_struct_1_aggregate_trade_iter);
  Py_VISIT(traverse_module_state->__pyx_ptype_24unicorn_binance_rest_api_7manager___pyx_scope_struct_2_get_historical_klines_generator);
  Py_VISIT(traverse_module_state->__pyx_type_24unicorn_binance_rest_api_7manager___pyx_scope_struct_2_get_historical_klines_generator);
  for (int i=0; i<3; ++i) { __Pyx_VISIT_CONST(traverse_module_state->__pyx_slice[i]); }
  for (int i=0; i<167; ++i) { __Pyx_VISIT_CONST(traverse_module_state->__pyx_tuple[i]); }
  for (int i=0; i<255; ++i) { __Pyx_VISIT_CONST(traverse_module_state->__pyx_codeobj_tab[i]); }
  for (int i=0; i<1092; ++i) { __Pyx_VISIT_CONST(traverse_module_state->__pyx_string_tab[i]); }
  __Pyx_VISIT_CONST(traverse_module_state->__pyx_int_0);
  __Pyx_VISIT_CONST(traverse_module_state->__pyx_int_1);
  __Pyx_VISIT_CONST(traverse_module_state->__pyx_int_2);
  __Pyx_VISIT_CONST(traverse_module_state->__pyx_int_3);
  __Pyx_VISIT_CONST(traverse_module_state->__pyx_int_10);
  __Pyx_VISIT_CONST(traverse_module_state->__pyx_int_12);
  __Pyx_VISIT_CONST(traverse_module_state->__pyx_int_200);
  __Pyx_VISIT_CONST(traverse_module_state->__pyx_int_300);
  __Pyx_VISIT_CONST(traverse_module_state->__pyx_int_500);
  __Pyx_VISIT_CONST(traverse_module_state->__pyx_int_1000);
  __Pyx_VISIT_CONST(traverse_module_state->__pyx_int_3600);
  __Pyx_VISIT_CONST(traverse_module_state->__pyx_int_3600000);
  __Pyx_VISIT_CONST(traverse_module_state->__pyx_int_neg_4);
  return 0;
}
#endif
/* #### Code section: module_code ### */

/* "unicorn_binance_rest_api/manager.py":199
 *     MINING_TO_FIAT = "MINING_C2C"
 * 
 *     def __init__(self,             # <<<<<<<<<<<<<<
 *                  api_key: Optional[str] = None,
 *                  api_secret: Optional[str] = None,
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_1__init__(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_1__init__ = {"__init__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_1__init__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_1__init__(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_api_key = 0;
  PyObject *__pyx_v_api_secret = 0;
  PyObject *__pyx_v_requests_params = 0;
  PyObject *__pyx_v_tld = 0;
  PyObject *__pyx_v_warn_on_update = 0;
  PyObject *__pyx_v_exchange = 0;
  PyObject *__pyx_v_disable_colorama = 0;
  PyObject *__pyx_v_debug = 0;
  PyObject *__pyx_v_socks5_proxy_server = 0;
  PyObject *__pyx_v_socks5_proxy_user = 0;
  PyObject *__pyx_v_socks5_proxy_pass = 0;
  PyObject *__pyx_v_socks5_proxy_ssl_verification = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[13] = {0,0,0,0,0,0,0,0,0,0,0,0,0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("__init__ (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,&__pyx_mstate_global->__pyx_n_u_api_key,&__pyx_mstate_global->__pyx_n_u_api_secret,&__pyx_mstate_global->__pyx_n_u_requests_params,&__pyx_mstate_global->__pyx_n_u_tld,&__pyx_mstate_global->__pyx_n_u_warn_on_update,&__pyx_mstate_global->__pyx_n_u_exchange,&__pyx_mstate_global->__pyx_n_u_disable_colorama,&__pyx_mstate_global->__pyx_n_u_debug,&__pyx_mstate_global->__pyx_n_u_socks5_proxy_server,&__pyx_mstate_global->__pyx_n_u_socks5_proxy_user,&__pyx_mstate_global->__pyx_n_u_socks5_proxy_pass,&__pyx_mstate_global->__pyx_n_u_socks5_proxy_ssl_verification,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 199, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case 13:
        values[12] = __Pyx_ArgRef_FASTCALL(__pyx_args, 12);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[12])) __PYX_ERR(0, 199, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case 12:
        values[11] = __Pyx_ArgRef_FASTCALL(__pyx_args, 11);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[11])) __PYX_ERR(0, 199, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case 11:
        values[10] = __Pyx_ArgRef_FASTCALL(__pyx_args, 10);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[10])) __PYX_ERR(0, 199, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case 10:
        values[9] = __Pyx_ArgRef_FASTCALL(__pyx_args, 9);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[9])) __PYX_ERR(0, 199, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  9:
        values[8] = __Pyx_ArgRef_FASTCALL(__pyx_args, 8);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[8])) __PYX_ERR(0, 199, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  8:
        values[7] = __Pyx_ArgRef_FASTCALL(__pyx_args, 7);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[7])) __PYX_ERR(0, 199, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  7:
        values[6] = __Pyx_ArgRef_FASTCALL(__pyx_args, 6);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[6])) __PYX_ERR(0, 199, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  6:
        values[5] = __Pyx_ArgRef_FASTCALL(__pyx_args, 5);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 199, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  5:
        values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 199, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  4:
        values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 199, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  3:
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 199, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 199, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 199, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "__init__", 0) < 0) __PYX_ERR(0, 199, __pyx_L3_error)

      /* "unicorn_binance_rest_api/manager.py":200
 * 
 *     def __init__(self,
 *                  api_key: Optional[str] = None,             # <<<<<<<<<<<<<<
 *                  api_secret: Optional[str] = None,
 *                  requests_params: dict = None,
*/
      if (!values[1]) values[1] = __Pyx_NewRef(((PyObject*)Py_None));

      /* "unicorn_binance_rest_api/manager.py":201
 *     def __init__(self,
 *                  api_key: Optional[str] = None,
 *                  api_secret: Optional[str] = None,             # <<<<<<<<<<<<<<
 *                  requests_params: dict = None,
 *                  tld: Optional[str] = None,
*/
      if (!values[2]) values[2] = __Pyx_NewRef(((PyObject*)Py_None));

      /* "unicorn_binance_rest_api/manager.py":202
 *                  api_key: Optional[str] = None,
 *                  api_secret: Optional[str] = None,
 *                  requests_params: dict = None,             # <<<<<<<<<<<<<<
 *                  tld: Optional[str] = None,
 *                  warn_on_update: bool = True,
*/
      if (!values[3]) values[3] = __Pyx_NewRef(((PyObject*)Py_None));

      /* "unicorn_binance_rest_api/manager.py":203
 *                  api_secret: Optional[str] = None,
 *                  requests_params: dict = None,
 *                  tld: Optional[str] = None,             # <<<<<<<<<<<<<<
 *                  warn_on_update: bool = True,
 *                  exchange: Optional[str] = None,
*/
      if (!values[4]) values[4] = __Pyx_NewRef(((PyObject*)Py_None));

      /* "unicorn_binance_rest_api/manager.py":204
 *                  requests_params: dict = None,
 *                  tld: Optional[str] = None,
 *                  warn_on_update: bool = True,             # <<<<<<<<<<<<<<
 *                  exchange: Optional[str] = None,
 *                  disable_colorama: bool = False,
*/
      if (!values[5]) values[5] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_True)));

      /* "unicorn_binance_rest_api/manager.py":205
 *                  tld: Optional[str] = None,
 *                  warn_on_update: bool = True,
 *                  exchange: Optional[str] = None,             # <<<<<<<<<<<<<<
 *                  disable_colorama: bool = False,
 *                  debug: bool = False,
*/
      if (!values[6]) values[6] = __Pyx_NewRef(((PyObject*)Py_None));

      /* "unicorn_binance_rest_api/manager.py":206
 *                  warn_on_update: bool = True,
 *                  exchange: Optional[str] = None,
 *                  disable_colorama: bool = False,             # <<<<<<<<<<<<<<
 *                  debug: bool = False,
 *                  socks5_proxy_server: Optional[str] = None,
*/
      if (!values[7]) values[7] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_False)));

      /* "unicorn_binance_rest_api/manager.py":207
 *                  exchange: Optional[str] = None,
 *                  disable_colorama: bool = False,
 *                  debug: bool = False,             # <<<<<<<<<<<<<<
 *                  socks5_proxy_server: Optional[str] = None,
 *                  socks5_proxy_user: Optional[str] = None,
*/
      if (!values[8]) values[8] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_False)));

      /* "unicorn_binance_rest_api/manager.py":208
 *                  disable_colorama: bool = False,
 *                  debug: bool = False,
 *                  socks5_proxy_server: Optional[str] = None,             # <<<<<<<<<<<<<<
 *                  socks5_proxy_user: Optional[str] = None,
 *                  socks5_proxy_pass: Optional[str] = None,
*/
      if (!values[9]) values[9] = __Pyx_NewRef(((PyObject*)Py_None));

      /* "unicorn_binance_rest_api/manager.py":209
 *                  debug: bool = False,
 *                  socks5_proxy_server: Optional[str] = None,
 *                  socks5_proxy_user: Optional[str] = None,             # <<<<<<<<<<<<<<
 *                  socks5_proxy_pass: Optional[str] = None,
 *                  socks5_proxy_ssl_verification: Optional[bool] = True):
*/
      if (!values[10]) values[10] = __Pyx_NewRef(((PyObject*)Py_None));

      /* "unicorn_binance_rest_api/manager.py":210
 *                  socks5_proxy_server: Optional[str] = None,
 *                  socks5_proxy_user: Optional[str] = None,
 *                  socks5_proxy_pass: Optional[str] = None,             # <<<<<<<<<<<<<<
 *                  socks5_proxy_ssl_verification: Optional[bool] = True):
 * 
*/
      if (!values[11]) values[11] = __Pyx_NewRef(((PyObject*)Py_None));

      /* "unicorn_binance_rest_api/manager.py":211
 *                  socks5_proxy_user: Optional[str] = None,
 *                  socks5_proxy_pass: Optional[str] = None,
 *                  socks5_proxy_ssl_verification: Optional[bool] = True):             # <<<<<<<<<<<<<<
 * 
 *         self.name: Optional[str] = __app_name__
*/
      if (!values[12]) values[12] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_True)));
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("__init__", 0, 1, 13, i); __PYX_ERR(0, 199, __pyx_L3_error) }
      }
    } else {
      switch (__pyx_nargs) {
        case 13:
        values[12] = __Pyx_ArgRef_FASTCALL(__pyx_args, 12);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[12])) __PYX_ERR(0, 199, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case 12:
        values[11] = __Pyx_ArgRef_FASTCALL(__pyx_args, 11);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[11])) __PYX_ERR(0, 199, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case 11:
        values[10] = __Pyx_ArgRef_FASTCALL(__pyx_args, 10);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[10])) __PYX_ERR(0, 199, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case 10:
        values[9] = __Pyx_ArgRef_FASTCALL(__pyx_args, 9);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[9])) __PYX_ERR(0, 199, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  9:
        values[8] = __Pyx_ArgRef_FASTCALL(__pyx_args, 8);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[8])) __PYX_ERR(0, 199, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  8:
        values[7] = __Pyx_ArgRef_FASTCALL(__pyx_args, 7);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[7])) __PYX_ERR(0, 199, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  7:
        values[6] = __Pyx_ArgRef_FASTCALL(__pyx_args, 6);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[6])) __PYX_ERR(0, 199, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  6:
        values[5] = __Pyx_ArgRef_FASTCALL(__pyx_args, 5);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 199, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  5:
        values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 199, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  4:
        values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 199, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  3:
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 199, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 199, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 199, __pyx_L3_error)
        break;
        default: goto __pyx_L5_argtuple_error;
      }

      /* "unicorn_binance_rest_api/manager.py":200
 * 
 *     def __init__(self,
 *                  api_key: Optional[str] = None,             # <<<<<<<<<<<<<<
 *                  api_secret: Optional[str] = None,
 *                  requests_params: dict = None,
*/
      if (!values[1]) values[1] = __Pyx_NewRef(((PyObject*)Py_None));

      /* "unicorn_binance_rest_api/manager.py":201
 *     def __init__(self,
 *                  api_key: Optional[str] = None,
 *                  api_secret: Optional[str] = None,             # <<<<<<<<<<<<<<
 *                  requests_params: dict = None,
 *                  tld: Optional[str] = None,
*/
      if (!values[2]) values[2] = __Pyx_NewRef(((PyObject*)Py_None));

      /* "unicorn_binance_rest_api/manager.py":202
 *                  api_key: Optional[str] = None,
 *                  api_secret: Optional[str] = None,
 *                  requests_params: dict = None,             # <<<<<<<<<<<<<<
 *                  tld: Optional[str] = None,
 *                  warn_on_update: bool = True,
*/
      if (!values[3]) values[3] = __Pyx_NewRef(((PyObject*)Py_None));

      /* "unicorn_binance_rest_api/manager.py":203
 *                  api_secret: Optional[str] = None,
 *                  requests_params: dict = None,
 *                  tld: Optional[str] = None,             # <<<<<<<<<<<<<<
 *                  warn_on_update: bool = True,
 *                  exchange: Optional[str] = None,
*/
      if (!values[4]) values[4] = __Pyx_NewRef(((PyObject*)Py_None));
      if (!values[5]) values[5] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_True)));

      /* "unicorn_binance_rest_api/manager.py":205
 *                  tld: Optional[str] = None,
 *                  warn_on_update: bool = True,
 *                  exchange: Optional[str] = None,             # <<<<<<<<<<<<<<
 *                  disable_colorama: bool = False,
 *                  debug: bool = False,
*/
      if (!values[6]) values[6] = __Pyx_NewRef(((PyObject*)Py_None));
      if (!values[7]) values[7] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_False)));
      if (!values[8]) values[8] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_False)));

      /* "unicorn_binance_rest_api/manager.py":208
 *                  disable_colorama: bool = False,
 *                  debug: bool = False,
 *                  socks5_proxy_server: Optional[str] = None,             # <<<<<<<<<<<<<<
 *                  socks5_proxy_user: Optional[str] = None,
 *                  socks5_proxy_pass: Optional[str] = None,
*/
      if (!values[9]) values[9] = __Pyx_NewRef(((PyObject*)Py_None));

      /* "unicorn_binance_rest_api/manager.py":209
 *                  debug: bool = False,
 *                  socks5_proxy_server: Optional[str] = None,
 *                  socks5_proxy_user: Optional[str] = None,             # <<<<<<<<<<<<<<
 *                  socks5_proxy_pass: Optional[str] = None,
 *                  socks5_proxy_ssl_verification: Optional[bool] = True):
*/
      if (!values[10]) values[10] = __Pyx_NewRef(((PyObject*)Py_None));

      /* "unicorn_binance_rest_api/manager.py":210
 *                  socks5_proxy_server: Optional[str] = None,
 *                  socks5_proxy_user: Optional[str] = None,
 *                  socks5_proxy_pass: Optional[str] = None,             # <<<<<<<<<<<<<<
 *                  socks5_proxy_ssl_verification: Optional[bool] = True):
 * 
*/
      if (!values[11]) values[11] = __Pyx_NewRef(((PyObject*)Py_None));
      if (!values[12]) values[12] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_True)));
    }
    __pyx_v_self = values[0];
    __pyx_v_api_key = ((PyObject*)values[1]);
    __pyx_v_api_secret = ((PyObject*)values[2]);
    __pyx_v_requests_params = ((PyObject*)values[3]);
    __pyx_v_tld = ((PyObject*)values[4]);
    __pyx_v_warn_on_update = values[5];
    __pyx_v_exchange = ((PyObject*)values[6]);
    __pyx_v_disable_colorama = values[7];
    __pyx_v_debug = values[8];
    __pyx_v_socks5_proxy_server = ((PyObject*)values[9]);
    __pyx_v_socks5_proxy_user = ((PyObject*)values[10]);
    __pyx_v_socks5_proxy_pass = ((PyObject*)values[11]);
    __pyx_v_socks5_proxy_ssl_verification = values[12];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("__init__", 0, 1, 13, __pyx_nargs); __PYX_ERR(0, 199, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_api_key), (&PyUnicode_Type), 1, "api_key", 2))) __PYX_ERR(0, 200, __pyx_L1_error)
  if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_api_secret), (&PyUnicode_Type), 1, "api_secret", 2))) __PYX_ERR(0, 201, __pyx_L1_error)
  if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_requests_params), (&PyDict_Type), 1, "requests_params", 2))) __PYX_ERR(0, 202, __pyx_L1_error)
  if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_tld), (&PyUnicode_Type), 1, "tld", 2))) __PYX_ERR(0, 203, __pyx_L1_error)
  if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_exchange), (&PyUnicode_Type), 1, "exchange", 2))) __PYX_ERR(0, 205, __pyx_L1_error)
  if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_socks5_proxy_server), (&PyUnicode_Type), 1, "socks5_proxy_server", 2))) __PYX_ERR(0, 208, __pyx_L1_error)
  if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_socks5_proxy_user), (&PyUnicode_Type), 1, "socks5_proxy_user", 2))) __PYX_ERR(0, 209, __pyx_L1_error)
  if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_socks5_proxy_pass), (&PyUnicode_Type), 1, "socks5_proxy_pass", 2))) __PYX_ERR(0, 210, __pyx_L1_error)
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager___init__(__pyx_self, __pyx_v_self, __pyx_v_api_key, __pyx_v_api_secret, __pyx_v_requests_params, __pyx_v_tld, __pyx_v_warn_on_update, __pyx_v_exchange, __pyx_v_disable_colorama, __pyx_v_debug, __pyx_v_socks5_proxy_server, __pyx_v_socks5_proxy_user, __pyx_v_socks5_proxy_pass, __pyx_v_socks5_proxy_ssl_verification);

  /* "unicorn_binance_rest_api/manager.py":199
 *     MINING_TO_FIAT = "MINING_C2C"
 * 
 *     def __init__(self,             # <<<<<<<<<<<<<<
 *                  api_key: Optional[str] = None,
 *                  api_secret: Optional[str] = None,
*/

  /* function exit code */
  goto __pyx_L0;
  __pyx_L1_error:;
  __pyx_r = NULL;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  goto __pyx_L7_cleaned_up;
  __pyx_L0:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __pyx_L7_cleaned_up:;
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager___init__(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_api_key, PyObject *__pyx_v_api_secret, PyObject *__pyx_v_requests_params, PyObject *__pyx_v_tld, PyObject *__pyx_v_warn_on_update, PyObject *__pyx_v_exchange, PyObject *__pyx_v_disable_colorama, PyObject *__pyx_v_debug, PyObject *__pyx_v_socks5_proxy_server, PyObject *__pyx_v_socks5_proxy_user, PyObject *__pyx_v_socks5_proxy_pass, PyObject *__pyx_v_socks5_proxy_ssl_verification) {
  PyObject *__pyx_v_socks_proxy_uri = NULL;
  PyObject *__pyx_v_error_msg = NULL;
  PyObject *__pyx_v_res = NULL;
  PyObject *__pyx_v_update_msg = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  PyObject *__pyx_t_4 = NULL;
  PyObject *__pyx_t_5 = NULL;
  PyObject *__pyx_t_6 = NULL;
  PyObject *__pyx_t_7 = NULL;
  PyObject *__pyx_t_8[9];
  PyObject *__pyx_t_9 = NULL;
  size_t __pyx_t_10;
  int __pyx_t_11;
  PyObject *__pyx_t_12[3];
  int __pyx_t_13;
  PyObject *__pyx_t_14 = NULL;
  PyObject *__pyx_t_15 = NULL;
  PyObject *__pyx_t_16 = NULL;
  PyObject *__pyx_t_17 = NULL;
  PyObject *__pyx_t_18 = NULL;
  PyObject *__pyx_t_19[18];
  PyObject *__pyx_t_20 = NULL;
  PyObject *__pyx_t_21 = NULL;
  PyObject *__pyx_t_22 = NULL;
  int __pyx_t_23;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("__init__", 0);

  /* "unicorn_binance_rest_api/manager.py":213
 *                  socks5_proxy_ssl_verification: Optional[bool] = True):
 * 
 *         self.name: Optional[str] = __app_name__             # <<<<<<<<<<<<<<
 *         self.version: Optional[str] = __version__
 *         logger.info(f"New instance of {self.get_user_agent()}-{'compiled' if cython.compiled else 'source'} on "
*/
  __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_mstate_global->__pyx_n_u_app_name); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 213, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_name, __pyx_t_1) < 0) __PYX_ERR(0, 213, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

  /* "unicorn_binance_rest_api/manager.py":214
 * 
 *         self.name: Optional[str] = __app_name__
 *         self.version: Optional[str] = __version__             # <<<<<<<<<<<<<<
 *         logger.info(f"New instance of {self.get_user_agent()}-{'compiled' if cython.compiled else 'source'} on "
 *                     f"{str(platform.system())} {str(platform.release())} for exchange {exchange} started ...")
*/
  __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_mstate_global->__pyx_n_u_version); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 214, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_version_2, __pyx_t_1) < 0) __PYX_ERR(0, 214, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

  /* "unicorn_binance_rest_api/manager.py":215
 *         self.name: Optional[str] = __app_name__
 *         self.version: Optional[str] = __version__
 *         logger.info(f"New instance of {self.get_user_agent()}-{'compiled' if cython.compiled else 'source'} on "             # <<<<<<<<<<<<<<
 *                     f"{str(platform.system())} {str(platform.release())} for exchange {exchange} started ...")
 *         self.sigterm = False
*/
  __pyx_t_2 = NULL;
  __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_logger); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 215, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_info); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 215, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_get_user_agent); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 215, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __pyx_t_5 = __Pyx_PyObject_CallNoArg(__pyx_t_3); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 215, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  __pyx_t_3 = __Pyx_PyObject_FormatSimple(__pyx_t_5, __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 215, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;

  /* "unicorn_binance_rest_api/manager.py":216
 *         self.version: Optional[str] = __version__
 *         logger.info(f"New instance of {self.get_user_agent()}-{'compiled' if cython.compiled else 'source'} on "
 *                     f"{str(platform.system())} {str(platform.release())} for exchange {exchange} started ...")             # <<<<<<<<<<<<<<
 *         self.sigterm = False
 *         self.session = None
*/
  __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_platform); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 216, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_system); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 216, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_6);
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  __pyx_t_5 = __Pyx_PyObject_CallNoArg(__pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 216, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
  __pyx_t_6 = __Pyx_PyObject_Unicode(__pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 216, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_6);
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_platform); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 216, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_release); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 216, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_7);
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  __pyx_t_5 = __Pyx_PyObject_CallNoArg(__pyx_t_7); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 216, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
  __pyx_t_7 = __Pyx_PyObject_Unicode(__pyx_t_5); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 216, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_7);
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  __pyx_t_5 = __Pyx_PyUnicode_Unicode(__pyx_v_exchange); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 216, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __pyx_t_8[0] = __pyx_mstate_global->__pyx_kp_u_New_instance_of;
  __pyx_t_8[1] = __pyx_t_3;
  __pyx_t_8[2] = __pyx_mstate_global->__pyx_kp_u_compiled_on;
  __pyx_t_8[3] = __pyx_t_6;
  __pyx_t_8[4] = __pyx_mstate_global->__pyx_kp_u_;
  __pyx_t_8[5] = __pyx_t_7;
  __pyx_t_8[6] = __pyx_mstate_global->__pyx_kp_u_for_exchange;
  __pyx_t_8[7] = __pyx_t_5;
  __pyx_t_8[8] = __pyx_mstate_global->__pyx_kp_u_started;

  /* "unicorn_binance_rest_api/manager.py":215
 *         self.name: Optional[str] = __app_name__
 *         self.version: Optional[str] = __version__
 *         logger.info(f"New instance of {self.get_user_agent()}-{'compiled' if cython.compiled else 'source'} on "             # <<<<<<<<<<<<<<
 *                     f"{str(platform.system())} {str(platform.release())} for exchange {exchange} started ...")
 *         self.sigterm = False
*/
  __pyx_t_9 = __Pyx_PyUnicode_Join(__pyx_t_8, 9, 16 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_3) + 13 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_6) + 1 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_7) + 14 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_5) + 12, 127 | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_3) | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_6) | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_7) | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_5));
  if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 215, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_9);
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
  __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  __pyx_t_10 = 1;
  #if CYTHON_UNPACK_METHODS
  if (unlikely(PyMethod_Check(__pyx_t_4))) {
    __pyx_t_2 = PyMethod_GET_SELF(__pyx_t_4);
    assert(__pyx_t_2);
    PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_4);
    __Pyx_INCREF(__pyx_t_2);
    __Pyx_INCREF(__pyx__function);
    __Pyx_DECREF_SET(__pyx_t_4, __pyx__function);
    __pyx_t_10 = 0;
  }
  #endif
  {
    PyObject *__pyx_callargs[2] = {__pyx_t_2, __pyx_t_9};
    __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+__pyx_t_10, (2-__pyx_t_10) | (__pyx_t_10*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 215, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
  }
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

  /* "unicorn_binance_rest_api/manager.py":217
 *         logger.info(f"New instance of {self.get_user_agent()}-{'compiled' if cython.compiled else 'source'} on "
 *                     f"{str(platform.system())} {str(platform.release())} for exchange {exchange} started ...")
 *         self.sigterm = False             # <<<<<<<<<<<<<<
 *         self.session = None
 * 
*/
  if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_sigterm, Py_False) < 0) __PYX_ERR(0, 217, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":218
 *                     f"{str(platform.system())} {str(platform.release())} for exchange {exchange} started ...")
 *         self.sigterm = False
 *         self.session = None             # <<<<<<<<<<<<<<
 * 
 *         if self.sigterm is False:
*/
  if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_session, Py_None) < 0) __PYX_ERR(0, 218, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":220
 *         self.session = None
 * 
 *         if self.sigterm is False:             # <<<<<<<<<<<<<<
 *             if disable_colorama is not True:
 *                 logger.info(f"Initiating `colorama_{colorama.__version__}`")
*/
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_sigterm); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 220, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_11 = (__pyx_t_1 == Py_False);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  if (__pyx_t_11) {

    /* "unicorn_binance_rest_api/manager.py":221
 * 
 *         if self.sigterm is False:
 *             if disable_colorama is not True:             # <<<<<<<<<<<<<<
 *                 logger.info(f"Initiating `colorama_{colorama.__version__}`")
 *                 colorama.init()
*/
    __pyx_t_11 = (__pyx_v_disable_colorama != Py_True);
    if (__pyx_t_11) {

      /* "unicorn_binance_rest_api/manager.py":222
 *         if self.sigterm is False:
 *             if disable_colorama is not True:
 *                 logger.info(f"Initiating `colorama_{colorama.__version__}`")             # <<<<<<<<<<<<<<
 *                 colorama.init()
 *             self.exchange = exchange
*/
      __pyx_t_4 = NULL;
      __Pyx_GetModuleGlobalName(__pyx_t_9, __pyx_mstate_global->__pyx_n_u_logger); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 222, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_9);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_9, __pyx_mstate_global->__pyx_n_u_info); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 222, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      __Pyx_GetModuleGlobalName(__pyx_t_9, __pyx_mstate_global->__pyx_n_u_colorama); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 222, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_9);
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_9, __pyx_mstate_global->__pyx_n_u_version); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 222, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      __pyx_t_9 = __Pyx_PyObject_FormatSimple(__pyx_t_5, __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 222, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_9);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_t_12[0] = __pyx_mstate_global->__pyx_kp_u_Initiating_colorama;
      __pyx_t_12[1] = __pyx_t_9;
      __pyx_t_12[2] = __pyx_mstate_global->__pyx_kp_u__2;
      __pyx_t_5 = __Pyx_PyUnicode_Join(__pyx_t_12, 3, 21 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_9) + 1, 127 | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_9));
      if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 222, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      __pyx_t_10 = 1;
      #if CYTHON_UNPACK_METHODS
      if (unlikely(PyMethod_Check(__pyx_t_2))) {
        __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_2);
        assert(__pyx_t_4);
        PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_2);
        __Pyx_INCREF(__pyx_t_4);
        __Pyx_INCREF(__pyx__function);
        __Pyx_DECREF_SET(__pyx_t_2, __pyx__function);
        __pyx_t_10 = 0;
      }
      #endif
      {
        PyObject *__pyx_callargs[2] = {__pyx_t_4, __pyx_t_5};
        __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_2, __pyx_callargs+__pyx_t_10, (2-__pyx_t_10) | (__pyx_t_10*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 222, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_1);
      }
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

      /* "unicorn_binance_rest_api/manager.py":223
 *             if disable_colorama is not True:
 *                 logger.info(f"Initiating `colorama_{colorama.__version__}`")
 *                 colorama.init()             # <<<<<<<<<<<<<<
 *             self.exchange = exchange
 *             self.debug = debug
*/
      __pyx_t_2 = NULL;
      __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_colorama); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 223, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_init); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 223, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_t_10 = 1;
      #if CYTHON_UNPACK_METHODS
      if (unlikely(PyMethod_Check(__pyx_t_4))) {
        __pyx_t_2 = PyMethod_GET_SELF(__pyx_t_4);
        assert(__pyx_t_2);
        PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_2);
        __Pyx_INCREF(__pyx__function);
        __Pyx_DECREF_SET(__pyx_t_4, __pyx__function);
        __pyx_t_10 = 0;
      }
      #endif
      {
        PyObject *__pyx_callargs[2] = {__pyx_t_2, NULL};
        __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+__pyx_t_10, (1-__pyx_t_10) | (__pyx_t_10*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 223, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_1);
      }
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

      /* "unicorn_binance_rest_api/manager.py":221
 * 
 *         if self.sigterm is False:
 *             if disable_colorama is not True:             # <<<<<<<<<<<<<<
 *                 logger.info(f"Initiating `colorama_{colorama.__version__}`")
 *                 colorama.init()
*/
    }

    /* "unicorn_binance_rest_api/manager.py":224
 *                 logger.info(f"Initiating `colorama_{colorama.__version__}`")
 *                 colorama.init()
 *             self.exchange = exchange             # <<<<<<<<<<<<<<
 *             self.debug = debug
 * 
*/
    if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_exchange, __pyx_v_exchange) < 0) __PYX_ERR(0, 224, __pyx_L1_error)

    /* "unicorn_binance_rest_api/manager.py":225
 *                 colorama.init()
 *             self.exchange = exchange
 *             self.debug = debug             # <<<<<<<<<<<<<<
 * 
 *             if socks5_proxy_server is None:
*/
    if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_debug, __pyx_v_debug) < 0) __PYX_ERR(0, 225, __pyx_L1_error)

    /* "unicorn_binance_rest_api/manager.py":227
 *             self.debug = debug
 * 
 *             if socks5_proxy_server is None:             # <<<<<<<<<<<<<<
 *                 self.socks5_proxy_address: Optional[str] = None
 *                 self.socks5_proxy_user: Optional[str] = None
*/
    __pyx_t_11 = (__pyx_v_socks5_proxy_server == ((PyObject*)Py_None));
    if (__pyx_t_11) {

      /* "unicorn_binance_rest_api/manager.py":228
 * 
 *             if socks5_proxy_server is None:
 *                 self.socks5_proxy_address: Optional[str] = None             # <<<<<<<<<<<<<<
 *                 self.socks5_proxy_user: Optional[str] = None
 *                 self.socks5_proxy_pass: Optional[str] = None
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_socks5_proxy_address, Py_None) < 0) __PYX_ERR(0, 228, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":229
 *             if socks5_proxy_server is None:
 *                 self.socks5_proxy_address: Optional[str] = None
 *                 self.socks5_proxy_user: Optional[str] = None             # <<<<<<<<<<<<<<
 *                 self.socks5_proxy_pass: Optional[str] = None
 *                 self.socks5_proxy_port: Optional[str] = None
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_socks5_proxy_user, Py_None) < 0) __PYX_ERR(0, 229, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":230
 *                 self.socks5_proxy_address: Optional[str] = None
 *                 self.socks5_proxy_user: Optional[str] = None
 *                 self.socks5_proxy_pass: Optional[str] = None             # <<<<<<<<<<<<<<
 *                 self.socks5_proxy_port: Optional[str] = None
 *                 self.socks5_proxy_ssl_verification: Optional[bool] = True
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_socks5_proxy_pass, Py_None) < 0) __PYX_ERR(0, 230, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":231
 *                 self.socks5_proxy_user: Optional[str] = None
 *                 self.socks5_proxy_pass: Optional[str] = None
 *                 self.socks5_proxy_port: Optional[str] = None             # <<<<<<<<<<<<<<
 *                 self.socks5_proxy_ssl_verification: Optional[bool] = True
 *             else:
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_socks5_proxy_port, Py_None) < 0) __PYX_ERR(0, 231, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":232
 *                 self.socks5_proxy_pass: Optional[str] = None
 *                 self.socks5_proxy_port: Optional[str] = None
 *                 self.socks5_proxy_ssl_verification: Optional[bool] = True             # <<<<<<<<<<<<<<
 *             else:
 *                 # Prepare Socks Proxy usage
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_socks5_proxy_ssl_verification, Py_True) < 0) __PYX_ERR(0, 232, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":227
 *             self.debug = debug
 * 
 *             if socks5_proxy_server is None:             # <<<<<<<<<<<<<<
 *                 self.socks5_proxy_address: Optional[str] = None
 *                 self.socks5_proxy_user: Optional[str] = None
*/
      goto __pyx_L5;
    }

    /* "unicorn_binance_rest_api/manager.py":235
 *             else:
 *                 # Prepare Socks Proxy usage
 *                 self.socks5_proxy_ssl_verification = socks5_proxy_ssl_verification             # <<<<<<<<<<<<<<
 *                 self.socks5_proxy_user = socks5_proxy_user
 *                 self.socks5_proxy_pass = socks5_proxy_pass
*/
    /*else*/ {
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_socks5_proxy_ssl_verification, __pyx_v_socks5_proxy_ssl_verification) < 0) __PYX_ERR(0, 235, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":236
 *                 # Prepare Socks Proxy usage
 *                 self.socks5_proxy_ssl_verification = socks5_proxy_ssl_verification
 *                 self.socks5_proxy_user = socks5_proxy_user             # <<<<<<<<<<<<<<
 *                 self.socks5_proxy_pass = socks5_proxy_pass
 *                 self.socks5_proxy_address, self.socks5_proxy_port = socks5_proxy_server.split(":")
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_socks5_proxy_user, __pyx_v_socks5_proxy_user) < 0) __PYX_ERR(0, 236, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":237
 *                 self.socks5_proxy_ssl_verification = socks5_proxy_ssl_verification
 *                 self.socks5_proxy_user = socks5_proxy_user
 *                 self.socks5_proxy_pass = socks5_proxy_pass             # <<<<<<<<<<<<<<
 *                 self.socks5_proxy_address, self.socks5_proxy_port = socks5_proxy_server.split(":")
 *                 socks_proxy_uri = "socks5://"
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_socks5_proxy_pass, __pyx_v_socks5_proxy_pass) < 0) __PYX_ERR(0, 237, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":238
 *                 self.socks5_proxy_user = socks5_proxy_user
 *                 self.socks5_proxy_pass = socks5_proxy_pass
 *                 self.socks5_proxy_address, self.socks5_proxy_port = socks5_proxy_server.split(":")             # <<<<<<<<<<<<<<
 *                 socks_proxy_uri = "socks5://"
 *                 if self.socks5_proxy_user is not None:
*/
      if (unlikely(__pyx_v_socks5_proxy_server == Py_None)) {
        PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%.30s'", "split");
        __PYX_ERR(0, 238, __pyx_L1_error)
      }
      __pyx_t_1 = PyUnicode_Split(__pyx_v_socks5_proxy_server, __Pyx_NoneAsNull(__pyx_mstate_global->__pyx_kp_u__3), -1L); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 238, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_1);
      if (1) {
        PyObject* sequence = __pyx_t_1;
        Py_ssize_t size = __Pyx_PyList_GET_SIZE(sequence);
        if (unlikely(size != 2)) {
          if (size > 2) __Pyx_RaiseTooManyValuesError(2);
          else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
          __PYX_ERR(0, 238, __pyx_L1_error)
        }
        #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
        __pyx_t_4 = __Pyx_PyList_GetItemRef(sequence, 0);
        if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 238, __pyx_L1_error)
        __Pyx_XGOTREF(__pyx_t_4);
        __pyx_t_2 = __Pyx_PyList_GetItemRef(sequence, 1);
        if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 238, __pyx_L1_error)
        __Pyx_XGOTREF(__pyx_t_2);
        #else
        __pyx_t_4 = __Pyx_PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 238, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_2 = __Pyx_PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 238, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_2);
        #endif
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      }
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_socks5_proxy_address, __pyx_t_4) < 0) __PYX_ERR(0, 238, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_socks5_proxy_port, __pyx_t_2) < 0) __PYX_ERR(0, 238, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

      /* "unicorn_binance_rest_api/manager.py":239
 *                 self.socks5_proxy_pass = socks5_proxy_pass
 *                 self.socks5_proxy_address, self.socks5_proxy_port = socks5_proxy_server.split(":")
 *                 socks_proxy_uri = "socks5://"             # <<<<<<<<<<<<<<
 *                 if self.socks5_proxy_user is not None:
 *                     socks_proxy_uri += self.socks5_proxy_user
*/
      __Pyx_INCREF(__pyx_mstate_global->__pyx_kp_u_socks5);
      __pyx_v_socks_proxy_uri = __pyx_mstate_global->__pyx_kp_u_socks5;

      /* "unicorn_binance_rest_api/manager.py":240
 *                 self.socks5_proxy_address, self.socks5_proxy_port = socks5_proxy_server.split(":")
 *                 socks_proxy_uri = "socks5://"
 *                 if self.socks5_proxy_user is not None:             # <<<<<<<<<<<<<<
 *                     socks_proxy_uri += self.socks5_proxy_user
 *                     if self.socks5_proxy_pass is not None:
*/
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_socks5_proxy_user); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 240, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_11 = (__pyx_t_1 != Py_None);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      if (__pyx_t_11) {

        /* "unicorn_binance_rest_api/manager.py":241
 *                 socks_proxy_uri = "socks5://"
 *                 if self.socks5_proxy_user is not None:
 *                     socks_proxy_uri += self.socks5_proxy_user             # <<<<<<<<<<<<<<
 *                     if self.socks5_proxy_pass is not None:
 *                         socks_proxy_uri += f":{self.socks5_proxy_pass}"
*/
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_socks5_proxy_user); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 241, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_2 = PyNumber_InPlaceAdd(__pyx_v_socks_proxy_uri, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 241, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF_SET(__pyx_v_socks_proxy_uri, __pyx_t_2);
        __pyx_t_2 = 0;

        /* "unicorn_binance_rest_api/manager.py":242
 *                 if self.socks5_proxy_user is not None:
 *                     socks_proxy_uri += self.socks5_proxy_user
 *                     if self.socks5_proxy_pass is not None:             # <<<<<<<<<<<<<<
 *                         socks_proxy_uri += f":{self.socks5_proxy_pass}"
 *                     socks_proxy_uri += "@"
*/
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_socks5_proxy_pass); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 242, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_11 = (__pyx_t_2 != Py_None);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        if (__pyx_t_11) {

          /* "unicorn_binance_rest_api/manager.py":243
 *                     socks_proxy_uri += self.socks5_proxy_user
 *                     if self.socks5_proxy_pass is not None:
 *                         socks_proxy_uri += f":{self.socks5_proxy_pass}"             # <<<<<<<<<<<<<<
 *                     socks_proxy_uri += "@"
 *                 socks_proxy_uri += f"{self.socks5_proxy_address}:{self.socks5_proxy_port}"
*/
          __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_socks5_proxy_pass); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 243, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_2);
          __pyx_t_1 = __Pyx_PyObject_FormatSimple(__pyx_t_2, __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 243, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
          __pyx_t_2 = __Pyx_PyUnicode_Concat(__pyx_mstate_global->__pyx_kp_u__3, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 243, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __pyx_t_1 = PyNumber_InPlaceAdd(__pyx_v_socks_proxy_uri, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 243, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_DECREF_SET(__pyx_v_socks_proxy_uri, __pyx_t_1);
          __pyx_t_1 = 0;

          /* "unicorn_binance_rest_api/manager.py":242
 *                 if self.socks5_proxy_user is not None:
 *                     socks_proxy_uri += self.socks5_proxy_user
 *                     if self.socks5_proxy_pass is not None:             # <<<<<<<<<<<<<<
 *                         socks_proxy_uri += f":{self.socks5_proxy_pass}"
 *                     socks_proxy_uri += "@"
*/
        }

        /* "unicorn_binance_rest_api/manager.py":244
 *                     if self.socks5_proxy_pass is not None:
 *                         socks_proxy_uri += f":{self.socks5_proxy_pass}"
 *                     socks_proxy_uri += "@"             # <<<<<<<<<<<<<<
 *                 socks_proxy_uri += f"{self.socks5_proxy_address}:{self.socks5_proxy_port}"
 *                 logger.info(f"Created SOCKS5 proxy URI: {socks_proxy_uri}")
*/
        __pyx_t_1 = PyNumber_InPlaceAdd(__pyx_v_socks_proxy_uri, __pyx_mstate_global->__pyx_kp_u__4); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 244, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF_SET(__pyx_v_socks_proxy_uri, __pyx_t_1);
        __pyx_t_1 = 0;

        /* "unicorn_binance_rest_api/manager.py":240
 *                 self.socks5_proxy_address, self.socks5_proxy_port = socks5_proxy_server.split(":")
 *                 socks_proxy_uri = "socks5://"
 *                 if self.socks5_proxy_user is not None:             # <<<<<<<<<<<<<<
 *                     socks_proxy_uri += self.socks5_proxy_user
 *                     if self.socks5_proxy_pass is not None:
*/
      }

      /* "unicorn_binance_rest_api/manager.py":245
 *                         socks_proxy_uri += f":{self.socks5_proxy_pass}"
 *                     socks_proxy_uri += "@"
 *                 socks_proxy_uri += f"{self.socks5_proxy_address}:{self.socks5_proxy_port}"             # <<<<<<<<<<<<<<
 *                 logger.info(f"Created SOCKS5 proxy URI: {socks_proxy_uri}")
 *                 self.request_socks5_proxies = {
*/
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_socks5_proxy_address); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 245, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_FormatSimple(__pyx_t_1, __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 245, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_socks5_proxy_port); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 245, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_4 = __Pyx_PyObject_FormatSimple(__pyx_t_1, __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 245, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_12[0] = __pyx_t_2;
      __pyx_t_12[1] = __pyx_mstate_global->__pyx_kp_u__3;
      __pyx_t_12[2] = __pyx_t_4;
      __pyx_t_1 = __Pyx_PyUnicode_Join(__pyx_t_12, 3, __Pyx_PyUnicode_GET_LENGTH(__pyx_t_2) + 1 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_4), 127 | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_2) | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_4));
      if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 245, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_4 = PyNumber_InPlaceAdd(__pyx_v_socks_proxy_uri, __pyx_t_1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 245, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF_SET(__pyx_v_socks_proxy_uri, __pyx_t_4);
      __pyx_t_4 = 0;

      /* "unicorn_binance_rest_api/manager.py":246
 *                     socks_proxy_uri += "@"
 *                 socks_proxy_uri += f"{self.socks5_proxy_address}:{self.socks5_proxy_port}"
 *                 logger.info(f"Created SOCKS5 proxy URI: {socks_proxy_uri}")             # <<<<<<<<<<<<<<
 *                 self.request_socks5_proxies = {
 *                     'http': socks_proxy_uri,
*/
      __pyx_t_1 = NULL;
      __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_logger); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 246, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_info); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 246, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_2 = __Pyx_PyObject_FormatSimple(__pyx_v_socks_proxy_uri, __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 246, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_9 = __Pyx_PyUnicode_Concat(__pyx_mstate_global->__pyx_kp_u_Created_SOCKS5_proxy_URI, __pyx_t_2); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 246, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_9);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_10 = 1;
      #if CYTHON_UNPACK_METHODS
      if (unlikely(PyMethod_Check(__pyx_t_5))) {
        __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_5);
        assert(__pyx_t_1);
        PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_5);
        __Pyx_INCREF(__pyx_t_1);
        __Pyx_INCREF(__pyx__function);
        __Pyx_DECREF_SET(__pyx_t_5, __pyx__function);
        __pyx_t_10 = 0;
      }
      #endif
      {
        PyObject *__pyx_callargs[2] = {__pyx_t_1, __pyx_t_9};
        __pyx_t_4 = __Pyx_PyObject_FastCall(__pyx_t_5, __pyx_callargs+__pyx_t_10, (2-__pyx_t_10) | (__pyx_t_10*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
        __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 246, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_4);
      }
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

      /* "unicorn_binance_rest_api/manager.py":248
 *                 logger.info(f"Created SOCKS5 proxy URI: {socks_proxy_uri}")
 *                 self.request_socks5_proxies = {
 *                     'http': socks_proxy_uri,             # <<<<<<<<<<<<<<
 *                     'https': socks_proxy_uri
 *                 }
*/
      __pyx_t_4 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 248, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_4);
      if (PyDict_SetItem(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_http, __pyx_v_socks_proxy_uri) < 0) __PYX_ERR(0, 248, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":249
 *                 self.request_socks5_proxies = {
 *                     'http': socks_proxy_uri,
 *                     'https': socks_proxy_uri             # <<<<<<<<<<<<<<
 *                 }
 * 
*/
      if (PyDict_SetItem(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_https, __pyx_v_socks_proxy_uri) < 0) __PYX_ERR(0, 248, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":247
 *                 socks_proxy_uri += f"{self.socks5_proxy_address}:{self.socks5_proxy_port}"
 *                 logger.info(f"Created SOCKS5 proxy URI: {socks_proxy_uri}")
 *                 self.request_socks5_proxies = {             # <<<<<<<<<<<<<<
 *                     'http': socks_proxy_uri,
 *                     'https': socks_proxy_uri
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_socks5_proxies, __pyx_t_4) < 0) __PYX_ERR(0, 247, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    }
    __pyx_L5:;

    /* "unicorn_binance_rest_api/manager.py":252
 *                 }
 * 
 *             if tld is not None:             # <<<<<<<<<<<<<<
 *                 # Todo: Remove Block with tld!
 *                 logger.warning("The parameter BinanceRestApiManager(tld=`com`) is obsolete, use parameter `exchange` "
*/
    __pyx_t_11 = (__pyx_v_tld != ((PyObject*)Py_None));
    if (__pyx_t_11) {

      /* "unicorn_binance_rest_api/manager.py":254
 *             if tld is not None:
 *                 # Todo: Remove Block with tld!
 *                 logger.warning("The parameter BinanceRestApiManager(tld=`com`) is obsolete, use parameter `exchange` "             # <<<<<<<<<<<<<<
 *                                "instead! Attention: parameter `exchange` overrules `tld`!! ")
 *                 self.API_URL = self.API_URL.format(tld)
*/
      __pyx_t_5 = NULL;
      __Pyx_GetModuleGlobalName(__pyx_t_9, __pyx_mstate_global->__pyx_n_u_logger); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 254, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_9);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_9, __pyx_mstate_global->__pyx_n_u_warning); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 254, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      __pyx_t_10 = 1;
      #if CYTHON_UNPACK_METHODS
      if (unlikely(PyMethod_Check(__pyx_t_1))) {
        __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_1);
        assert(__pyx_t_5);
        PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_1);
        __Pyx_INCREF(__pyx_t_5);
        __Pyx_INCREF(__pyx__function);
        __Pyx_DECREF_SET(__pyx_t_1, __pyx__function);
        __pyx_t_10 = 0;
      }
      #endif
      {
        PyObject *__pyx_callargs[2] = {__pyx_t_5, __pyx_mstate_global->__pyx_kp_u_The_parameter_BinanceRestApiMana};
        __pyx_t_4 = __Pyx_PyObject_FastCall(__pyx_t_1, __pyx_callargs+__pyx_t_10, (2-__pyx_t_10) | (__pyx_t_10*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
        __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 254, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_4);
      }
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

      /* "unicorn_binance_rest_api/manager.py":256
 *                 logger.warning("The parameter BinanceRestApiManager(tld=`com`) is obsolete, use parameter `exchange` "
 *                                "instead! Attention: parameter `exchange` overrules `tld`!! ")
 *                 self.API_URL = self.API_URL.format(tld)             # <<<<<<<<<<<<<<
 *                 self.MARGIN_API_URL = self.MARGIN_API_URL.format(tld)
 *                 self.WEBSITE_URL = self.WEBSITE_URL.format(tld)
*/
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_API_URL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 256, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_1 = __pyx_t_5;
      __Pyx_INCREF(__pyx_t_1);
      __pyx_t_10 = 0;
      {
        PyObject *__pyx_callargs[2] = {__pyx_t_1, __pyx_v_tld};
        __pyx_t_4 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_format, __pyx_callargs+__pyx_t_10, (2-__pyx_t_10) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
        __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 256, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_4);
      }
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_API_URL, __pyx_t_4) < 0) __PYX_ERR(0, 256, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

      /* "unicorn_binance_rest_api/manager.py":257
 *                                "instead! Attention: parameter `exchange` overrules `tld`!! ")
 *                 self.API_URL = self.API_URL.format(tld)
 *                 self.MARGIN_API_URL = self.MARGIN_API_URL.format(tld)             # <<<<<<<<<<<<<<
 *                 self.WEBSITE_URL = self.WEBSITE_URL.format(tld)
 *                 self.FUTURES_URL = self.FUTURES_URL.format(tld)
*/
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_MARGIN_API_URL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 257, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_5 = __pyx_t_1;
      __Pyx_INCREF(__pyx_t_5);
      __pyx_t_10 = 0;
      {
        PyObject *__pyx_callargs[2] = {__pyx_t_5, __pyx_v_tld};
        __pyx_t_4 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_format, __pyx_callargs+__pyx_t_10, (2-__pyx_t_10) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
        __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 257, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_4);
      }
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_MARGIN_API_URL, __pyx_t_4) < 0) __PYX_ERR(0, 257, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

      /* "unicorn_binance_rest_api/manager.py":258
 *                 self.API_URL = self.API_URL.format(tld)
 *                 self.MARGIN_API_URL = self.MARGIN_API_URL.format(tld)
 *                 self.WEBSITE_URL = self.WEBSITE_URL.format(tld)             # <<<<<<<<<<<<<<
 *                 self.FUTURES_URL = self.FUTURES_URL.format(tld)
 *                 self.FUTURES_DATA_URL = self.FUTURES_DATA_URL.format(tld)
*/
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_WEBSITE_URL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 258, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_1 = __pyx_t_5;
      __Pyx_INCREF(__pyx_t_1);
      __pyx_t_10 = 0;
      {
        PyObject *__pyx_callargs[2] = {__pyx_t_1, __pyx_v_tld};
        __pyx_t_4 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_format, __pyx_callargs+__pyx_t_10, (2-__pyx_t_10) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
        __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 258, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_4);
      }
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_WEBSITE_URL, __pyx_t_4) < 0) __PYX_ERR(0, 258, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

      /* "unicorn_binance_rest_api/manager.py":259
 *                 self.MARGIN_API_URL = self.MARGIN_API_URL.format(tld)
 *                 self.WEBSITE_URL = self.WEBSITE_URL.format(tld)
 *                 self.FUTURES_URL = self.FUTURES_URL.format(tld)             # <<<<<<<<<<<<<<
 *                 self.FUTURES_DATA_URL = self.FUTURES_DATA_URL.format(tld)
 *                 self.FUTURES_COIN_URL = self.FUTURES_COIN_URL.format(tld)
*/
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_FUTURES_URL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 259, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_5 = __pyx_t_1;
      __Pyx_INCREF(__pyx_t_5);
      __pyx_t_10 = 0;
      {
        PyObject *__pyx_callargs[2] = {__pyx_t_5, __pyx_v_tld};
        __pyx_t_4 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_format, __pyx_callargs+__pyx_t_10, (2-__pyx_t_10) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
        __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 259, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_4);
      }
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_FUTURES_URL, __pyx_t_4) < 0) __PYX_ERR(0, 259, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

      /* "unicorn_binance_rest_api/manager.py":260
 *                 self.WEBSITE_URL = self.WEBSITE_URL.format(tld)
 *                 self.FUTURES_URL = self.FUTURES_URL.format(tld)
 *                 self.FUTURES_DATA_URL = self.FUTURES_DATA_URL.format(tld)             # <<<<<<<<<<<<<<
 *                 self.FUTURES_COIN_URL = self.FUTURES_COIN_URL.format(tld)
 *                 self.FUTURES_COIN_DATA_URL = self.FUTURES_COIN_DATA_URL.format(tld)
*/
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_FUTURES_DATA_URL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 260, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_1 = __pyx_t_5;
      __Pyx_INCREF(__pyx_t_1);
      __pyx_t_10 = 0;
      {
        PyObject *__pyx_callargs[2] = {__pyx_t_1, __pyx_v_tld};
        __pyx_t_4 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_format, __pyx_callargs+__pyx_t_10, (2-__pyx_t_10) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
        __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 260, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_4);
      }
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_FUTURES_DATA_URL, __pyx_t_4) < 0) __PYX_ERR(0, 260, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

      /* "unicorn_binance_rest_api/manager.py":261
 *                 self.FUTURES_URL = self.FUTURES_URL.format(tld)
 *                 self.FUTURES_DATA_URL = self.FUTURES_DATA_URL.format(tld)
 *                 self.FUTURES_COIN_URL = self.FUTURES_COIN_URL.format(tld)             # <<<<<<<<<<<<<<
 *                 self.FUTURES_COIN_DATA_URL = self.FUTURES_COIN_DATA_URL.format(tld)
 * 
*/
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_FUTURES_COIN_URL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 261, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_5 = __pyx_t_1;
      __Pyx_INCREF(__pyx_t_5);
      __pyx_t_10 = 0;
      {
        PyObject *__pyx_callargs[2] = {__pyx_t_5, __pyx_v_tld};
        __pyx_t_4 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_format, __pyx_callargs+__pyx_t_10, (2-__pyx_t_10) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
        __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 261, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_4);
      }
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_FUTURES_COIN_URL, __pyx_t_4) < 0) __PYX_ERR(0, 261, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

      /* "unicorn_binance_rest_api/manager.py":262
 *                 self.FUTURES_DATA_URL = self.FUTURES_DATA_URL.format(tld)
 *                 self.FUTURES_COIN_URL = self.FUTURES_COIN_URL.format(tld)
 *                 self.FUTURES_COIN_DATA_URL = self.FUTURES_COIN_DATA_URL.format(tld)             # <<<<<<<<<<<<<<
 * 
 *             if self.exchange == "binance.com":
*/
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_FUTURES_COIN_DATA_URL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 262, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_1 = __pyx_t_5;
      __Pyx_INCREF(__pyx_t_1);
      __pyx_t_10 = 0;
      {
        PyObject *__pyx_callargs[2] = {__pyx_t_1, __pyx_v_tld};
        __pyx_t_4 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_format, __pyx_callargs+__pyx_t_10, (2-__pyx_t_10) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
        __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 262, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_4);
      }
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_FUTURES_COIN_DATA_URL, __pyx_t_4) < 0) __PYX_ERR(0, 262, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

      /* "unicorn_binance_rest_api/manager.py":252
 *                 }
 * 
 *             if tld is not None:             # <<<<<<<<<<<<<<
 *                 # Todo: Remove Block with tld!
 *                 logger.warning("The parameter BinanceRestApiManager(tld=`com`) is obsolete, use parameter `exchange` "
*/
    }

    /* "unicorn_binance_rest_api/manager.py":264
 *                 self.FUTURES_COIN_DATA_URL = self.FUTURES_COIN_DATA_URL.format(tld)
 * 
 *             if self.exchange == "binance.com":             # <<<<<<<<<<<<<<
 *                 self.API_URL = "https://api.binance.com/api"
 *                 self.MARGIN_API_URL = " https://api.binance.com/sapi"
*/
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_exchange); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 264, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_11 = (__Pyx_PyUnicode_Equals(__pyx_t_4, __pyx_mstate_global->__pyx_kp_u_binance_com, Py_EQ)); if (unlikely((__pyx_t_11 < 0))) __PYX_ERR(0, 264, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    if (__pyx_t_11) {

      /* "unicorn_binance_rest_api/manager.py":265
 * 
 *             if self.exchange == "binance.com":
 *                 self.API_URL = "https://api.binance.com/api"             # <<<<<<<<<<<<<<
 *                 self.MARGIN_API_URL = " https://api.binance.com/sapi"
 *                 self.WEBSITE_URL = "https://www.binance.com"
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_API_URL, __pyx_mstate_global->__pyx_kp_u_https_api_binance_com_api) < 0) __PYX_ERR(0, 265, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":266
 *             if self.exchange == "binance.com":
 *                 self.API_URL = "https://api.binance.com/api"
 *                 self.MARGIN_API_URL = " https://api.binance.com/sapi"             # <<<<<<<<<<<<<<
 *                 self.WEBSITE_URL = "https://www.binance.com"
 *                 self.FUTURES_URL = "https://fapi.binance.com/fapi"
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_MARGIN_API_URL, __pyx_mstate_global->__pyx_kp_u_https_api_binance_com_sapi) < 0) __PYX_ERR(0, 266, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":267
 *                 self.API_URL = "https://api.binance.com/api"
 *                 self.MARGIN_API_URL = " https://api.binance.com/sapi"
 *                 self.WEBSITE_URL = "https://www.binance.com"             # <<<<<<<<<<<<<<
 *                 self.FUTURES_URL = "https://fapi.binance.com/fapi"
 *                 self.FUTURES_DATA_URL = "https://fapi.binance.com/futures/data"
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_WEBSITE_URL, __pyx_mstate_global->__pyx_kp_u_https_www_binance_com) < 0) __PYX_ERR(0, 267, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":268
 *                 self.MARGIN_API_URL = " https://api.binance.com/sapi"
 *                 self.WEBSITE_URL = "https://www.binance.com"
 *                 self.FUTURES_URL = "https://fapi.binance.com/fapi"             # <<<<<<<<<<<<<<
 *                 self.FUTURES_DATA_URL = "https://fapi.binance.com/futures/data"
 *                 self.FUTURES_COIN_URL = "https://fapi.binance.com/fapi"
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_FUTURES_URL, __pyx_mstate_global->__pyx_kp_u_https_fapi_binance_com_fapi) < 0) __PYX_ERR(0, 268, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":269
 *                 self.WEBSITE_URL = "https://www.binance.com"
 *                 self.FUTURES_URL = "https://fapi.binance.com/fapi"
 *                 self.FUTURES_DATA_URL = "https://fapi.binance.com/futures/data"             # <<<<<<<<<<<<<<
 *                 self.FUTURES_COIN_URL = "https://fapi.binance.com/fapi"
 *                 self.FUTURES_COIN_DATA_URL = "https://dapi.binance.com/futures/data"
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_FUTURES_DATA_URL, __pyx_mstate_global->__pyx_kp_u_https_fapi_binance_com_futures_d) < 0) __PYX_ERR(0, 269, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":270
 *                 self.FUTURES_URL = "https://fapi.binance.com/fapi"
 *                 self.FUTURES_DATA_URL = "https://fapi.binance.com/futures/data"
 *                 self.FUTURES_COIN_URL = "https://fapi.binance.com/fapi"             # <<<<<<<<<<<<<<
 *                 self.FUTURES_COIN_DATA_URL = "https://dapi.binance.com/futures/data"
 *             elif self.exchange == "binance.com-testnet" or self.exchange == "binance.com-futures-testnet":
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_FUTURES_COIN_URL, __pyx_mstate_global->__pyx_kp_u_https_fapi_binance_com_fapi) < 0) __PYX_ERR(0, 270, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":271
 *                 self.FUTURES_DATA_URL = "https://fapi.binance.com/futures/data"
 *                 self.FUTURES_COIN_URL = "https://fapi.binance.com/fapi"
 *                 self.FUTURES_COIN_DATA_URL = "https://dapi.binance.com/futures/data"             # <<<<<<<<<<<<<<
 *             elif self.exchange == "binance.com-testnet" or self.exchange == "binance.com-futures-testnet":
 *                 # https://github.com/oliver-zehentleitner/unicorn-binance-rest-api/issues/20
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_FUTURES_COIN_DATA_URL, __pyx_mstate_global->__pyx_kp_u_https_dapi_binance_com_futures_d) < 0) __PYX_ERR(0, 271, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":264
 *                 self.FUTURES_COIN_DATA_URL = self.FUTURES_COIN_DATA_URL.format(tld)
 * 
 *             if self.exchange == "binance.com":             # <<<<<<<<<<<<<<
 *                 self.API_URL = "https://api.binance.com/api"
 *                 self.MARGIN_API_URL = " https://api.binance.com/sapi"
*/
      goto __pyx_L9;
    }

    /* "unicorn_binance_rest_api/manager.py":272
 *                 self.FUTURES_COIN_URL = "https://fapi.binance.com/fapi"
 *                 self.FUTURES_COIN_DATA_URL = "https://dapi.binance.com/futures/data"
 *             elif self.exchange == "binance.com-testnet" or self.exchange == "binance.com-futures-testnet":             # <<<<<<<<<<<<<<
 *                 # https://github.com/oliver-zehentleitner/unicorn-binance-rest-api/issues/20
 *                 self.API_URL = "https://testnet.binance.vision/api"
*/
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_exchange); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 272, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_13 = (__Pyx_PyUnicode_Equals(__pyx_t_4, __pyx_mstate_global->__pyx_kp_u_binance_com_testnet, Py_EQ)); if (unlikely((__pyx_t_13 < 0))) __PYX_ERR(0, 272, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    if (!__pyx_t_13) {
    } else {
      __pyx_t_11 = __pyx_t_13;
      goto __pyx_L10_bool_binop_done;
    }
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_exchange); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 272, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_13 = (__Pyx_PyUnicode_Equals(__pyx_t_4, __pyx_mstate_global->__pyx_kp_u_binance_com_futures_testnet, Py_EQ)); if (unlikely((__pyx_t_13 < 0))) __PYX_ERR(0, 272, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_11 = __pyx_t_13;
    __pyx_L10_bool_binop_done:;
    if (__pyx_t_11) {

      /* "unicorn_binance_rest_api/manager.py":274
 *             elif self.exchange == "binance.com-testnet" or self.exchange == "binance.com-futures-testnet":
 *                 # https://github.com/oliver-zehentleitner/unicorn-binance-rest-api/issues/20
 *                 self.API_URL = "https://testnet.binance.vision/api"             # <<<<<<<<<<<<<<
 *                 self.MARGIN_API_URL = " https://api.binance.com/sapi"
 *                 self.WEBSITE_URL = "https://testnet.binance.vision"
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_API_URL, __pyx_mstate_global->__pyx_kp_u_https_testnet_binance_vision_api) < 0) __PYX_ERR(0, 274, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":275
 *                 # https://github.com/oliver-zehentleitner/unicorn-binance-rest-api/issues/20
 *                 self.API_URL = "https://testnet.binance.vision/api"
 *                 self.MARGIN_API_URL = " https://api.binance.com/sapi"             # <<<<<<<<<<<<<<
 *                 self.WEBSITE_URL = "https://testnet.binance.vision"
 *                 self.FUTURES_URL = "https://testnet.binancefuture.com/fapi"
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_MARGIN_API_URL, __pyx_mstate_global->__pyx_kp_u_https_api_binance_com_sapi) < 0) __PYX_ERR(0, 275, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":276
 *                 self.API_URL = "https://testnet.binance.vision/api"
 *                 self.MARGIN_API_URL = " https://api.binance.com/sapi"
 *                 self.WEBSITE_URL = "https://testnet.binance.vision"             # <<<<<<<<<<<<<<
 *                 self.FUTURES_URL = "https://testnet.binancefuture.com/fapi"
 *                 self.FUTURES_DATA_URL = "https://testnet.binancefuture.com/futures/data"
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_WEBSITE_URL, __pyx_mstate_global->__pyx_kp_u_https_testnet_binance_vision) < 0) __PYX_ERR(0, 276, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":277
 *                 self.MARGIN_API_URL = " https://api.binance.com/sapi"
 *                 self.WEBSITE_URL = "https://testnet.binance.vision"
 *                 self.FUTURES_URL = "https://testnet.binancefuture.com/fapi"             # <<<<<<<<<<<<<<
 *                 self.FUTURES_DATA_URL = "https://testnet.binancefuture.com/futures/data"
 *                 self.FUTURES_COIN_URL = "https://testnet.binancefuture.com/dapi"
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_FUTURES_URL, __pyx_mstate_global->__pyx_kp_u_https_testnet_binancefuture_com) < 0) __PYX_ERR(0, 277, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":278
 *                 self.WEBSITE_URL = "https://testnet.binance.vision"
 *                 self.FUTURES_URL = "https://testnet.binancefuture.com/fapi"
 *                 self.FUTURES_DATA_URL = "https://testnet.binancefuture.com/futures/data"             # <<<<<<<<<<<<<<
 *                 self.FUTURES_COIN_URL = "https://testnet.binancefuture.com/dapi"
 *                 self.FUTURES_COIN_DATA_URL = "https://testnet.binancefuture.com/futures/data"
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_FUTURES_DATA_URL, __pyx_mstate_global->__pyx_kp_u_https_testnet_binancefuture_com_2) < 0) __PYX_ERR(0, 278, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":279
 *                 self.FUTURES_URL = "https://testnet.binancefuture.com/fapi"
 *                 self.FUTURES_DATA_URL = "https://testnet.binancefuture.com/futures/data"
 *                 self.FUTURES_COIN_URL = "https://testnet.binancefuture.com/dapi"             # <<<<<<<<<<<<<<
 *                 self.FUTURES_COIN_DATA_URL = "https://testnet.binancefuture.com/futures/data"
 *             elif self.exchange == "binance.com-margin":
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_FUTURES_COIN_URL, __pyx_mstate_global->__pyx_kp_u_https_testnet_binancefuture_com_3) < 0) __PYX_ERR(0, 279, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":280
 *                 self.FUTURES_DATA_URL = "https://testnet.binancefuture.com/futures/data"
 *                 self.FUTURES_COIN_URL = "https://testnet.binancefuture.com/dapi"
 *                 self.FUTURES_COIN_DATA_URL = "https://testnet.binancefuture.com/futures/data"             # <<<<<<<<<<<<<<
 *             elif self.exchange == "binance.com-margin":
 *                 self.API_URL = "https://api.binance.com/api"
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_FUTURES_COIN_DATA_URL, __pyx_mstate_global->__pyx_kp_u_https_testnet_binancefuture_com_2) < 0) __PYX_ERR(0, 280, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":272
 *                 self.FUTURES_COIN_URL = "https://fapi.binance.com/fapi"
 *                 self.FUTURES_COIN_DATA_URL = "https://dapi.binance.com/futures/data"
 *             elif self.exchange == "binance.com-testnet" or self.exchange == "binance.com-futures-testnet":             # <<<<<<<<<<<<<<
 *                 # https://github.com/oliver-zehentleitner/unicorn-binance-rest-api/issues/20
 *                 self.API_URL = "https://testnet.binance.vision/api"
*/
      goto __pyx_L9;
    }

    /* "unicorn_binance_rest_api/manager.py":281
 *                 self.FUTURES_COIN_URL = "https://testnet.binancefuture.com/dapi"
 *                 self.FUTURES_COIN_DATA_URL = "https://testnet.binancefuture.com/futures/data"
 *             elif self.exchange == "binance.com-margin":             # <<<<<<<<<<<<<<
 *                 self.API_URL = "https://api.binance.com/api"
 *                 self.MARGIN_API_URL = " https://api.binance.com/sapi"
*/
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_exchange); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 281, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_11 = (__Pyx_PyUnicode_Equals(__pyx_t_4, __pyx_mstate_global->__pyx_kp_u_binance_com_margin, Py_EQ)); if (unlikely((__pyx_t_11 < 0))) __PYX_ERR(0, 281, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    if (__pyx_t_11) {

      /* "unicorn_binance_rest_api/manager.py":282
 *                 self.FUTURES_COIN_DATA_URL = "https://testnet.binancefuture.com/futures/data"
 *             elif self.exchange == "binance.com-margin":
 *                 self.API_URL = "https://api.binance.com/api"             # <<<<<<<<<<<<<<
 *                 self.MARGIN_API_URL = " https://api.binance.com/sapi"
 *                 self.WEBSITE_URL = "https://www.binance.com"
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_API_URL, __pyx_mstate_global->__pyx_kp_u_https_api_binance_com_api) < 0) __PYX_ERR(0, 282, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":283
 *             elif self.exchange == "binance.com-margin":
 *                 self.API_URL = "https://api.binance.com/api"
 *                 self.MARGIN_API_URL = " https://api.binance.com/sapi"             # <<<<<<<<<<<<<<
 *                 self.WEBSITE_URL = "https://www.binance.com"
 *                 self.FUTURES_URL = "https://fapi.binance.com/fapi"
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_MARGIN_API_URL, __pyx_mstate_global->__pyx_kp_u_https_api_binance_com_sapi) < 0) __PYX_ERR(0, 283, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":284
 *                 self.API_URL = "https://api.binance.com/api"
 *                 self.MARGIN_API_URL = " https://api.binance.com/sapi"
 *                 self.WEBSITE_URL = "https://www.binance.com"             # <<<<<<<<<<<<<<
 *                 self.FUTURES_URL = "https://fapi.binance.com/fapi"
 *                 self.FUTURES_DATA_URL = "https://fapi.binance.com/futures/data"
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_WEBSITE_URL, __pyx_mstate_global->__pyx_kp_u_https_www_binance_com) < 0) __PYX_ERR(0, 284, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":285
 *                 self.MARGIN_API_URL = " https://api.binance.com/sapi"
 *                 self.WEBSITE_URL = "https://www.binance.com"
 *                 self.FUTURES_URL = "https://fapi.binance.com/fapi"             # <<<<<<<<<<<<<<
 *                 self.FUTURES_DATA_URL = "https://fapi.binance.com/futures/data"
 *                 self.FUTURES_COIN_URL = "https://fapi.binance.com/fapi"
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_FUTURES_URL, __pyx_mstate_global->__pyx_kp_u_https_fapi_binance_com_fapi) < 0) __PYX_ERR(0, 285, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":286
 *                 self.WEBSITE_URL = "https://www.binance.com"
 *                 self.FUTURES_URL = "https://fapi.binance.com/fapi"
 *                 self.FUTURES_DATA_URL = "https://fapi.binance.com/futures/data"             # <<<<<<<<<<<<<<
 *                 self.FUTURES_COIN_URL = "https://fapi.binance.com/fapi"
 *                 self.FUTURES_COIN_DATA_URL = "https://dapi.binance.com/futures/data"
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_FUTURES_DATA_URL, __pyx_mstate_global->__pyx_kp_u_https_fapi_binance_com_futures_d) < 0) __PYX_ERR(0, 286, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":287
 *                 self.FUTURES_URL = "https://fapi.binance.com/fapi"
 *                 self.FUTURES_DATA_URL = "https://fapi.binance.com/futures/data"
 *                 self.FUTURES_COIN_URL = "https://fapi.binance.com/fapi"             # <<<<<<<<<<<<<<
 *                 self.FUTURES_COIN_DATA_URL = "https://dapi.binance.com/futures/data"
 *             elif self.exchange == "binance.com-margin-testnet":
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_FUTURES_COIN_URL, __pyx_mstate_global->__pyx_kp_u_https_fapi_binance_com_fapi) < 0) __PYX_ERR(0, 287, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":288
 *                 self.FUTURES_DATA_URL = "https://fapi.binance.com/futures/data"
 *                 self.FUTURES_COIN_URL = "https://fapi.binance.com/fapi"
 *                 self.FUTURES_COIN_DATA_URL = "https://dapi.binance.com/futures/data"             # <<<<<<<<<<<<<<
 *             elif self.exchange == "binance.com-margin-testnet":
 *                 self.API_URL = "https://testnet.binance.vision/api"
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_FUTURES_COIN_DATA_URL, __pyx_mstate_global->__pyx_kp_u_https_dapi_binance_com_futures_d) < 0) __PYX_ERR(0, 288, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":281
 *                 self.FUTURES_COIN_URL = "https://testnet.binancefuture.com/dapi"
 *                 self.FUTURES_COIN_DATA_URL = "https://testnet.binancefuture.com/futures/data"
 *             elif self.exchange == "binance.com-margin":             # <<<<<<<<<<<<<<
 *                 self.API_URL = "https://api.binance.com/api"
 *                 self.MARGIN_API_URL = " https://api.binance.com/sapi"
*/
      goto __pyx_L9;
    }

    /* "unicorn_binance_rest_api/manager.py":289
 *                 self.FUTURES_COIN_URL = "https://fapi.binance.com/fapi"
 *                 self.FUTURES_COIN_DATA_URL = "https://dapi.binance.com/futures/data"
 *             elif self.exchange == "binance.com-margin-testnet":             # <<<<<<<<<<<<<<
 *                 self.API_URL = "https://testnet.binance.vision/api"
 *                 self.MARGIN_API_URL = " https://api.binance.com/sapi"
*/
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_exchange); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 289, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_11 = (__Pyx_PyUnicode_Equals(__pyx_t_4, __pyx_mstate_global->__pyx_kp_u_binance_com_margin_testnet, Py_EQ)); if (unlikely((__pyx_t_11 < 0))) __PYX_ERR(0, 289, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    if (__pyx_t_11) {

      /* "unicorn_binance_rest_api/manager.py":290
 *                 self.FUTURES_COIN_DATA_URL = "https://dapi.binance.com/futures/data"
 *             elif self.exchange == "binance.com-margin-testnet":
 *                 self.API_URL = "https://testnet.binance.vision/api"             # <<<<<<<<<<<<<<
 *                 self.MARGIN_API_URL = " https://api.binance.com/sapi"
 *                 self.WEBSITE_URL = "https://testnet.binance.vision"
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_API_URL, __pyx_mstate_global->__pyx_kp_u_https_testnet_binance_vision_api) < 0) __PYX_ERR(0, 290, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":291
 *             elif self.exchange == "binance.com-margin-testnet":
 *                 self.API_URL = "https://testnet.binance.vision/api"
 *                 self.MARGIN_API_URL = " https://api.binance.com/sapi"             # <<<<<<<<<<<<<<
 *                 self.WEBSITE_URL = "https://testnet.binance.vision"
 *                 self.FUTURES_URL = "https://testnet.binancefuture.com/fapi"
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_MARGIN_API_URL, __pyx_mstate_global->__pyx_kp_u_https_api_binance_com_sapi) < 0) __PYX_ERR(0, 291, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":292
 *                 self.API_URL = "https://testnet.binance.vision/api"
 *                 self.MARGIN_API_URL = " https://api.binance.com/sapi"
 *                 self.WEBSITE_URL = "https://testnet.binance.vision"             # <<<<<<<<<<<<<<
 *                 self.FUTURES_URL = "https://testnet.binancefuture.com/fapi"
 *                 self.FUTURES_DATA_URL = "https://testnet.binancefuture.com/futures/data"
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_WEBSITE_URL, __pyx_mstate_global->__pyx_kp_u_https_testnet_binance_vision) < 0) __PYX_ERR(0, 292, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":293
 *                 self.MARGIN_API_URL = " https://api.binance.com/sapi"
 *                 self.WEBSITE_URL = "https://testnet.binance.vision"
 *                 self.FUTURES_URL = "https://testnet.binancefuture.com/fapi"             # <<<<<<<<<<<<<<
 *                 self.FUTURES_DATA_URL = "https://testnet.binancefuture.com/futures/data"
 *                 self.FUTURES_COIN_URL = "https://testnet.binancefuture.com/dapi"
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_FUTURES_URL, __pyx_mstate_global->__pyx_kp_u_https_testnet_binancefuture_com) < 0) __PYX_ERR(0, 293, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":294
 *                 self.WEBSITE_URL = "https://testnet.binance.vision"
 *                 self.FUTURES_URL = "https://testnet.binancefuture.com/fapi"
 *                 self.FUTURES_DATA_URL = "https://testnet.binancefuture.com/futures/data"             # <<<<<<<<<<<<<<
 *                 self.FUTURES_COIN_URL = "https://testnet.binancefuture.com/dapi"
 *                 self.FUTURES_COIN_DATA_URL = "https://testnet.binancefuture.com/futures/data"
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_FUTURES_DATA_URL, __pyx_mstate_global->__pyx_kp_u_https_testnet_binancefuture_com_2) < 0) __PYX_ERR(0, 294, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":295
 *                 self.FUTURES_URL = "https://testnet.binancefuture.com/fapi"
 *                 self.FUTURES_DATA_URL = "https://testnet.binancefuture.com/futures/data"
 *                 self.FUTURES_COIN_URL = "https://testnet.binancefuture.com/dapi"             # <<<<<<<<<<<<<<
 *                 self.FUTURES_COIN_DATA_URL = "https://testnet.binancefuture.com/futures/data"
 *             elif self.exchange == "binance.com-isolated_margin":
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_FUTURES_COIN_URL, __pyx_mstate_global->__pyx_kp_u_https_testnet_binancefuture_com_3) < 0) __PYX_ERR(0, 295, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":296
 *                 self.FUTURES_DATA_URL = "https://testnet.binancefuture.com/futures/data"
 *                 self.FUTURES_COIN_URL = "https://testnet.binancefuture.com/dapi"
 *                 self.FUTURES_COIN_DATA_URL = "https://testnet.binancefuture.com/futures/data"             # <<<<<<<<<<<<<<
 *             elif self.exchange == "binance.com-isolated_margin":
 *                 self.API_URL = "https://api.binance.com/api"
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_FUTURES_COIN_DATA_URL, __pyx_mstate_global->__pyx_kp_u_https_testnet_binancefuture_com_2) < 0) __PYX_ERR(0, 296, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":289
 *                 self.FUTURES_COIN_URL = "https://fapi.binance.com/fapi"
 *                 self.FUTURES_COIN_DATA_URL = "https://dapi.binance.com/futures/data"
 *             elif self.exchange == "binance.com-margin-testnet":             # <<<<<<<<<<<<<<
 *                 self.API_URL = "https://testnet.binance.vision/api"
 *                 self.MARGIN_API_URL = " https://api.binance.com/sapi"
*/
      goto __pyx_L9;
    }

    /* "unicorn_binance_rest_api/manager.py":297
 *                 self.FUTURES_COIN_URL = "https://testnet.binancefuture.com/dapi"
 *                 self.FUTURES_COIN_DATA_URL = "https://testnet.binancefuture.com/futures/data"
 *             elif self.exchange == "binance.com-isolated_margin":             # <<<<<<<<<<<<<<
 *                 self.API_URL = "https://api.binance.com/api"
 *                 self.MARGIN_API_URL = " https://api.binance.com/sapi"
*/
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_exchange); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 297, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_11 = (__Pyx_PyUnicode_Equals(__pyx_t_4, __pyx_mstate_global->__pyx_kp_u_binance_com_isolated_margin, Py_EQ)); if (unlikely((__pyx_t_11 < 0))) __PYX_ERR(0, 297, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    if (__pyx_t_11) {

      /* "unicorn_binance_rest_api/manager.py":298
 *                 self.FUTURES_COIN_DATA_URL = "https://testnet.binancefuture.com/futures/data"
 *             elif self.exchange == "binance.com-isolated_margin":
 *                 self.API_URL = "https://api.binance.com/api"             # <<<<<<<<<<<<<<
 *                 self.MARGIN_API_URL = " https://api.binance.com/sapi"
 *                 self.WEBSITE_URL = "https://www.binance.com"
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_API_URL, __pyx_mstate_global->__pyx_kp_u_https_api_binance_com_api) < 0) __PYX_ERR(0, 298, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":299
 *             elif self.exchange == "binance.com-isolated_margin":
 *                 self.API_URL = "https://api.binance.com/api"
 *                 self.MARGIN_API_URL = " https://api.binance.com/sapi"             # <<<<<<<<<<<<<<
 *                 self.WEBSITE_URL = "https://www.binance.com"
 *                 self.FUTURES_URL = "https://fapi.binance.com/fapi"
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_MARGIN_API_URL, __pyx_mstate_global->__pyx_kp_u_https_api_binance_com_sapi) < 0) __PYX_ERR(0, 299, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":300
 *                 self.API_URL = "https://api.binance.com/api"
 *                 self.MARGIN_API_URL = " https://api.binance.com/sapi"
 *                 self.WEBSITE_URL = "https://www.binance.com"             # <<<<<<<<<<<<<<
 *                 self.FUTURES_URL = "https://fapi.binance.com/fapi"
 *                 self.FUTURES_DATA_URL = "https://fapi.binance.com/futures/data"
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_WEBSITE_URL, __pyx_mstate_global->__pyx_kp_u_https_www_binance_com) < 0) __PYX_ERR(0, 300, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":301
 *                 self.MARGIN_API_URL = " https://api.binance.com/sapi"
 *                 self.WEBSITE_URL = "https://www.binance.com"
 *                 self.FUTURES_URL = "https://fapi.binance.com/fapi"             # <<<<<<<<<<<<<<
 *                 self.FUTURES_DATA_URL = "https://fapi.binance.com/futures/data"
 *                 self.FUTURES_COIN_URL = "https://fapi.binance.com/fapi"
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_FUTURES_URL, __pyx_mstate_global->__pyx_kp_u_https_fapi_binance_com_fapi) < 0) __PYX_ERR(0, 301, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":302
 *                 self.WEBSITE_URL = "https://www.binance.com"
 *                 self.FUTURES_URL = "https://fapi.binance.com/fapi"
 *                 self.FUTURES_DATA_URL = "https://fapi.binance.com/futures/data"             # <<<<<<<<<<<<<<
 *                 self.FUTURES_COIN_URL = "https://fapi.binance.com/fapi"
 *                 self.FUTURES_COIN_DATA_URL = "https://dapi.binance.com/futures/data"
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_FUTURES_DATA_URL, __pyx_mstate_global->__pyx_kp_u_https_fapi_binance_com_futures_d) < 0) __PYX_ERR(0, 302, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":303
 *                 self.FUTURES_URL = "https://fapi.binance.com/fapi"
 *                 self.FUTURES_DATA_URL = "https://fapi.binance.com/futures/data"
 *                 self.FUTURES_COIN_URL = "https://fapi.binance.com/fapi"             # <<<<<<<<<<<<<<
 *                 self.FUTURES_COIN_DATA_URL = "https://dapi.binance.com/futures/data"
 *             elif self.exchange == "binance.com-isolated_margin-testnet":
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_FUTURES_COIN_URL, __pyx_mstate_global->__pyx_kp_u_https_fapi_binance_com_fapi) < 0) __PYX_ERR(0, 303, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":304
 *                 self.FUTURES_DATA_URL = "https://fapi.binance.com/futures/data"
 *                 self.FUTURES_COIN_URL = "https://fapi.binance.com/fapi"
 *                 self.FUTURES_COIN_DATA_URL = "https://dapi.binance.com/futures/data"             # <<<<<<<<<<<<<<
 *             elif self.exchange == "binance.com-isolated_margin-testnet":
 *                 self.API_URL = "https://testnet.binance.vision/api"
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_FUTURES_COIN_DATA_URL, __pyx_mstate_global->__pyx_kp_u_https_dapi_binance_com_futures_d) < 0) __PYX_ERR(0, 304, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":297
 *                 self.FUTURES_COIN_URL = "https://testnet.binancefuture.com/dapi"
 *                 self.FUTURES_COIN_DATA_URL = "https://testnet.binancefuture.com/futures/data"
 *             elif self.exchange == "binance.com-isolated_margin":             # <<<<<<<<<<<<<<
 *                 self.API_URL = "https://api.binance.com/api"
 *                 self.MARGIN_API_URL = " https://api.binance.com/sapi"
*/
      goto __pyx_L9;
    }

    /* "unicorn_binance_rest_api/manager.py":305
 *                 self.FUTURES_COIN_URL = "https://fapi.binance.com/fapi"
 *                 self.FUTURES_COIN_DATA_URL = "https://dapi.binance.com/futures/data"
 *             elif self.exchange == "binance.com-isolated_margin-testnet":             # <<<<<<<<<<<<<<
 *                 self.API_URL = "https://testnet.binance.vision/api"
 *                 self.MARGIN_API_URL = " https://api.binance.com/sapi"
*/
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_exchange); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 305, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_11 = (__Pyx_PyUnicode_Equals(__pyx_t_4, __pyx_mstate_global->__pyx_kp_u_binance_com_isolated_margin_test, Py_EQ)); if (unlikely((__pyx_t_11 < 0))) __PYX_ERR(0, 305, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    if (__pyx_t_11) {

      /* "unicorn_binance_rest_api/manager.py":306
 *                 self.FUTURES_COIN_DATA_URL = "https://dapi.binance.com/futures/data"
 *             elif self.exchange == "binance.com-isolated_margin-testnet":
 *                 self.API_URL = "https://testnet.binance.vision/api"             # <<<<<<<<<<<<<<
 *                 self.MARGIN_API_URL = " https://api.binance.com/sapi"
 *                 self.WEBSITE_URL = "https://testnet.binance.vision"
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_API_URL, __pyx_mstate_global->__pyx_kp_u_https_testnet_binance_vision_api) < 0) __PYX_ERR(0, 306, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":307
 *             elif self.exchange == "binance.com-isolated_margin-testnet":
 *                 self.API_URL = "https://testnet.binance.vision/api"
 *                 self.MARGIN_API_URL = " https://api.binance.com/sapi"             # <<<<<<<<<<<<<<
 *                 self.WEBSITE_URL = "https://testnet.binance.vision"
 *                 self.FUTURES_URL = "https://testnet.binancefuture.com/fapi"
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_MARGIN_API_URL, __pyx_mstate_global->__pyx_kp_u_https_api_binance_com_sapi) < 0) __PYX_ERR(0, 307, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":308
 *                 self.API_URL = "https://testnet.binance.vision/api"
 *                 self.MARGIN_API_URL = " https://api.binance.com/sapi"
 *                 self.WEBSITE_URL = "https://testnet.binance.vision"             # <<<<<<<<<<<<<<
 *                 self.FUTURES_URL = "https://testnet.binancefuture.com/fapi"
 *                 self.FUTURES_DATA_URL = "https://testnet.binancefuture.com/futures/data"
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_WEBSITE_URL, __pyx_mstate_global->__pyx_kp_u_https_testnet_binance_vision) < 0) __PYX_ERR(0, 308, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":309
 *                 self.MARGIN_API_URL = " https://api.binance.com/sapi"
 *                 self.WEBSITE_URL = "https://testnet.binance.vision"
 *                 self.FUTURES_URL = "https://testnet.binancefuture.com/fapi"             # <<<<<<<<<<<<<<
 *                 self.FUTURES_DATA_URL = "https://testnet.binancefuture.com/futures/data"
 *                 self.FUTURES_COIN_URL = "https://testnet.binancefuture.com/dapi"
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_FUTURES_URL, __pyx_mstate_global->__pyx_kp_u_https_testnet_binancefuture_com) < 0) __PYX_ERR(0, 309, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":310
 *                 self.WEBSITE_URL = "https://testnet.binance.vision"
 *                 self.FUTURES_URL = "https://testnet.binancefuture.com/fapi"
 *                 self.FUTURES_DATA_URL = "https://testnet.binancefuture.com/futures/data"             # <<<<<<<<<<<<<<
 *                 self.FUTURES_COIN_URL = "https://testnet.binancefuture.com/dapi"
 *                 self.FUTURES_COIN_DATA_URL = "https://testnet.binancefuture.com/futures/data"
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_FUTURES_DATA_URL, __pyx_mstate_global->__pyx_kp_u_https_testnet_binancefuture_com_2) < 0) __PYX_ERR(0, 310, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":311
 *                 self.FUTURES_URL = "https://testnet.binancefuture.com/fapi"
 *                 self.FUTURES_DATA_URL = "https://testnet.binancefuture.com/futures/data"
 *                 self.FUTURES_COIN_URL = "https://testnet.binancefuture.com/dapi"             # <<<<<<<<<<<<<<
 *                 self.FUTURES_COIN_DATA_URL = "https://testnet.binancefuture.com/futures/data"
 *             elif self.exchange == "binance.com-futures":
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_FUTURES_COIN_URL, __pyx_mstate_global->__pyx_kp_u_https_testnet_binancefuture_com_3) < 0) __PYX_ERR(0, 311, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":312
 *                 self.FUTURES_DATA_URL = "https://testnet.binancefuture.com/futures/data"
 *                 self.FUTURES_COIN_URL = "https://testnet.binancefuture.com/dapi"
 *                 self.FUTURES_COIN_DATA_URL = "https://testnet.binancefuture.com/futures/data"             # <<<<<<<<<<<<<<
 *             elif self.exchange == "binance.com-futures":
 *                 self.API_URL = "https://api.binance.com/api"
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_FUTURES_COIN_DATA_URL, __pyx_mstate_global->__pyx_kp_u_https_testnet_binancefuture_com_2) < 0) __PYX_ERR(0, 312, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":305
 *                 self.FUTURES_COIN_URL = "https://fapi.binance.com/fapi"
 *                 self.FUTURES_COIN_DATA_URL = "https://dapi.binance.com/futures/data"
 *             elif self.exchange == "binance.com-isolated_margin-testnet":             # <<<<<<<<<<<<<<
 *                 self.API_URL = "https://testnet.binance.vision/api"
 *                 self.MARGIN_API_URL = " https://api.binance.com/sapi"
*/
      goto __pyx_L9;
    }

    /* "unicorn_binance_rest_api/manager.py":313
 *                 self.FUTURES_COIN_URL = "https://testnet.binancefuture.com/dapi"
 *                 self.FUTURES_COIN_DATA_URL = "https://testnet.binancefuture.com/futures/data"
 *             elif self.exchange == "binance.com-futures":             # <<<<<<<<<<<<<<
 *                 self.API_URL = "https://api.binance.com/api"
 *                 self.MARGIN_API_URL = " https://api.binance.com/sapi"
*/
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_exchange); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 313, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_11 = (__Pyx_PyUnicode_Equals(__pyx_t_4, __pyx_mstate_global->__pyx_kp_u_binance_com_futures, Py_EQ)); if (unlikely((__pyx_t_11 < 0))) __PYX_ERR(0, 313, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    if (__pyx_t_11) {

      /* "unicorn_binance_rest_api/manager.py":314
 *                 self.FUTURES_COIN_DATA_URL = "https://testnet.binancefuture.com/futures/data"
 *             elif self.exchange == "binance.com-futures":
 *                 self.API_URL = "https://api.binance.com/api"             # <<<<<<<<<<<<<<
 *                 self.MARGIN_API_URL = " https://api.binance.com/sapi"
 *                 self.WEBSITE_URL = "https://www.binance.com"
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_API_URL, __pyx_mstate_global->__pyx_kp_u_https_api_binance_com_api) < 0) __PYX_ERR(0, 314, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":315
 *             elif self.exchange == "binance.com-futures":
 *                 self.API_URL = "https://api.binance.com/api"
 *                 self.MARGIN_API_URL = " https://api.binance.com/sapi"             # <<<<<<<<<<<<<<
 *                 self.WEBSITE_URL = "https://www.binance.com"
 *                 self.FUTURES_URL = "https://fapi.binance.com/fapi"
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_MARGIN_API_URL, __pyx_mstate_global->__pyx_kp_u_https_api_binance_com_sapi) < 0) __PYX_ERR(0, 315, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":316
 *                 self.API_URL = "https://api.binance.com/api"
 *                 self.MARGIN_API_URL = " https://api.binance.com/sapi"
 *                 self.WEBSITE_URL = "https://www.binance.com"             # <<<<<<<<<<<<<<
 *                 self.FUTURES_URL = "https://fapi.binance.com/fapi"
 *                 self.FUTURES_DATA_URL = "https://fapi.binance.com/futures/data"
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_WEBSITE_URL, __pyx_mstate_global->__pyx_kp_u_https_www_binance_com) < 0) __PYX_ERR(0, 316, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":317
 *                 self.MARGIN_API_URL = " https://api.binance.com/sapi"
 *                 self.WEBSITE_URL = "https://www.binance.com"
 *                 self.FUTURES_URL = "https://fapi.binance.com/fapi"             # <<<<<<<<<<<<<<
 *                 self.FUTURES_DATA_URL = "https://fapi.binance.com/futures/data"
 *                 self.FUTURES_COIN_URL = "https://fapi.binance.com/fapi"
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_FUTURES_URL, __pyx_mstate_global->__pyx_kp_u_https_fapi_binance_com_fapi) < 0) __PYX_ERR(0, 317, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":318
 *                 self.WEBSITE_URL = "https://www.binance.com"
 *                 self.FUTURES_URL = "https://fapi.binance.com/fapi"
 *                 self.FUTURES_DATA_URL = "https://fapi.binance.com/futures/data"             # <<<<<<<<<<<<<<
 *                 self.FUTURES_COIN_URL = "https://fapi.binance.com/fapi"
 *                 self.FUTURES_COIN_DATA_URL = "https://dapi.binance.com/futures/data"
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_FUTURES_DATA_URL, __pyx_mstate_global->__pyx_kp_u_https_fapi_binance_com_futures_d) < 0) __PYX_ERR(0, 318, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":319
 *                 self.FUTURES_URL = "https://fapi.binance.com/fapi"
 *                 self.FUTURES_DATA_URL = "https://fapi.binance.com/futures/data"
 *                 self.FUTURES_COIN_URL = "https://fapi.binance.com/fapi"             # <<<<<<<<<<<<<<
 *                 self.FUTURES_COIN_DATA_URL = "https://dapi.binance.com/futures/data"
 *             elif self.exchange == "binance.com-coin-futures" or self.exchange == "binance.com-coin_futures":
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_FUTURES_COIN_URL, __pyx_mstate_global->__pyx_kp_u_https_fapi_binance_com_fapi) < 0) __PYX_ERR(0, 319, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":320
 *                 self.FUTURES_DATA_URL = "https://fapi.binance.com/futures/data"
 *                 self.FUTURES_COIN_URL = "https://fapi.binance.com/fapi"
 *                 self.FUTURES_COIN_DATA_URL = "https://dapi.binance.com/futures/data"             # <<<<<<<<<<<<<<
 *             elif self.exchange == "binance.com-coin-futures" or self.exchange == "binance.com-coin_futures":
 *                 self.API_URL = "https://api.binance.com/api"
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_FUTURES_COIN_DATA_URL, __pyx_mstate_global->__pyx_kp_u_https_dapi_binance_com_futures_d) < 0) __PYX_ERR(0, 320, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":313
 *                 self.FUTURES_COIN_URL = "https://testnet.binancefuture.com/dapi"
 *                 self.FUTURES_COIN_DATA_URL = "https://testnet.binancefuture.com/futures/data"
 *             elif self.exchange == "binance.com-futures":             # <<<<<<<<<<<<<<
 *                 self.API_URL = "https://api.binance.com/api"
 *                 self.MARGIN_API_URL = " https://api.binance.com/sapi"
*/
      goto __pyx_L9;
    }

    /* "unicorn_binance_rest_api/manager.py":321
 *                 self.FUTURES_COIN_URL = "https://fapi.binance.com/fapi"
 *                 self.FUTURES_COIN_DATA_URL = "https://dapi.binance.com/futures/data"
 *             elif self.exchange == "binance.com-coin-futures" or self.exchange == "binance.com-coin_futures":             # <<<<<<<<<<<<<<
 *                 self.API_URL = "https://api.binance.com/api"
 *                 self.MARGIN_API_URL = " https://api.binance.com/sapi"
*/
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_exchange); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 321, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_13 = (__Pyx_PyUnicode_Equals(__pyx_t_4, __pyx_mstate_global->__pyx_kp_u_binance_com_coin_futures, Py_EQ)); if (unlikely((__pyx_t_13 < 0))) __PYX_ERR(0, 321, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    if (!__pyx_t_13) {
    } else {
      __pyx_t_11 = __pyx_t_13;
      goto __pyx_L12_bool_binop_done;
    }
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_exchange); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 321, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_13 = (__Pyx_PyUnicode_Equals(__pyx_t_4, __pyx_mstate_global->__pyx_kp_u_binance_com_coin_futures_2, Py_EQ)); if (unlikely((__pyx_t_13 < 0))) __PYX_ERR(0, 321, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_11 = __pyx_t_13;
    __pyx_L12_bool_binop_done:;
    if (__pyx_t_11) {

      /* "unicorn_binance_rest_api/manager.py":322
 *                 self.FUTURES_COIN_DATA_URL = "https://dapi.binance.com/futures/data"
 *             elif self.exchange == "binance.com-coin-futures" or self.exchange == "binance.com-coin_futures":
 *                 self.API_URL = "https://api.binance.com/api"             # <<<<<<<<<<<<<<
 *                 self.MARGIN_API_URL = " https://api.binance.com/sapi"
 *                 self.WEBSITE_URL = "https://www.binance.com"
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_API_URL, __pyx_mstate_global->__pyx_kp_u_https_api_binance_com_api) < 0) __PYX_ERR(0, 322, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":323
 *             elif self.exchange == "binance.com-coin-futures" or self.exchange == "binance.com-coin_futures":
 *                 self.API_URL = "https://api.binance.com/api"
 *                 self.MARGIN_API_URL = " https://api.binance.com/sapi"             # <<<<<<<<<<<<<<
 *                 self.WEBSITE_URL = "https://www.binance.com"
 *                 self.FUTURES_URL = "https://fapi.binance.com/fapi"
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_MARGIN_API_URL, __pyx_mstate_global->__pyx_kp_u_https_api_binance_com_sapi) < 0) __PYX_ERR(0, 323, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":324
 *                 self.API_URL = "https://api.binance.com/api"
 *                 self.MARGIN_API_URL = " https://api.binance.com/sapi"
 *                 self.WEBSITE_URL = "https://www.binance.com"             # <<<<<<<<<<<<<<
 *                 self.FUTURES_URL = "https://fapi.binance.com/fapi"
 *                 self.FUTURES_DATA_URL = "https://fapi.binance.com/futures/data"
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_WEBSITE_URL, __pyx_mstate_global->__pyx_kp_u_https_www_binance_com) < 0) __PYX_ERR(0, 324, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":325
 *                 self.MARGIN_API_URL = " https://api.binance.com/sapi"
 *                 self.WEBSITE_URL = "https://www.binance.com"
 *                 self.FUTURES_URL = "https://fapi.binance.com/fapi"             # <<<<<<<<<<<<<<
 *                 self.FUTURES_DATA_URL = "https://fapi.binance.com/futures/data"
 *                 self.FUTURES_COIN_URL = "https://fapi.binance.com/fapi"
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_FUTURES_URL, __pyx_mstate_global->__pyx_kp_u_https_fapi_binance_com_fapi) < 0) __PYX_ERR(0, 325, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":326
 *                 self.WEBSITE_URL = "https://www.binance.com"
 *                 self.FUTURES_URL = "https://fapi.binance.com/fapi"
 *                 self.FUTURES_DATA_URL = "https://fapi.binance.com/futures/data"             # <<<<<<<<<<<<<<
 *                 self.FUTURES_COIN_URL = "https://fapi.binance.com/fapi"
 *                 self.FUTURES_COIN_DATA_URL = "https://dapi.binance.com/futures/data"
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_FUTURES_DATA_URL, __pyx_mstate_global->__pyx_kp_u_https_fapi_binance_com_futures_d) < 0) __PYX_ERR(0, 326, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":327
 *                 self.FUTURES_URL = "https://fapi.binance.com/fapi"
 *                 self.FUTURES_DATA_URL = "https://fapi.binance.com/futures/data"
 *                 self.FUTURES_COIN_URL = "https://fapi.binance.com/fapi"             # <<<<<<<<<<<<<<
 *                 self.FUTURES_COIN_DATA_URL = "https://dapi.binance.com/futures/data"
 *             elif self.exchange == "binance.us":
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_FUTURES_COIN_URL, __pyx_mstate_global->__pyx_kp_u_https_fapi_binance_com_fapi) < 0) __PYX_ERR(0, 327, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":328
 *                 self.FUTURES_DATA_URL = "https://fapi.binance.com/futures/data"
 *                 self.FUTURES_COIN_URL = "https://fapi.binance.com/fapi"
 *                 self.FUTURES_COIN_DATA_URL = "https://dapi.binance.com/futures/data"             # <<<<<<<<<<<<<<
 *             elif self.exchange == "binance.us":
 *                 # Todo: Needs a test
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_FUTURES_COIN_DATA_URL, __pyx_mstate_global->__pyx_kp_u_https_dapi_binance_com_futures_d) < 0) __PYX_ERR(0, 328, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":321
 *                 self.FUTURES_COIN_URL = "https://fapi.binance.com/fapi"
 *                 self.FUTURES_COIN_DATA_URL = "https://dapi.binance.com/futures/data"
 *             elif self.exchange == "binance.com-coin-futures" or self.exchange == "binance.com-coin_futures":             # <<<<<<<<<<<<<<
 *                 self.API_URL = "https://api.binance.com/api"
 *                 self.MARGIN_API_URL = " https://api.binance.com/sapi"
*/
      goto __pyx_L9;
    }

    /* "unicorn_binance_rest_api/manager.py":329
 *                 self.FUTURES_COIN_URL = "https://fapi.binance.com/fapi"
 *                 self.FUTURES_COIN_DATA_URL = "https://dapi.binance.com/futures/data"
 *             elif self.exchange == "binance.us":             # <<<<<<<<<<<<<<
 *                 # Todo: Needs a test
 *                 self.API_URL = "https://api.binance.us/api"
*/
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_exchange); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 329, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_11 = (__Pyx_PyUnicode_Equals(__pyx_t_4, __pyx_mstate_global->__pyx_kp_u_binance_us, Py_EQ)); if (unlikely((__pyx_t_11 < 0))) __PYX_ERR(0, 329, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    if (__pyx_t_11) {

      /* "unicorn_binance_rest_api/manager.py":331
 *             elif self.exchange == "binance.us":
 *                 # Todo: Needs a test
 *                 self.API_URL = "https://api.binance.us/api"             # <<<<<<<<<<<<<<
 *                 self.MARGIN_API_URL = " https://api.binance.us/sapi"
 *                 self.WEBSITE_URL = "https://www.binance.us"
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_API_URL, __pyx_mstate_global->__pyx_kp_u_https_api_binance_us_api) < 0) __PYX_ERR(0, 331, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":332
 *                 # Todo: Needs a test
 *                 self.API_URL = "https://api.binance.us/api"
 *                 self.MARGIN_API_URL = " https://api.binance.us/sapi"             # <<<<<<<<<<<<<<
 *                 self.WEBSITE_URL = "https://www.binance.us"
 *                 self.FUTURES_URL = "https://fapi.binance.us/fapi"
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_MARGIN_API_URL, __pyx_mstate_global->__pyx_kp_u_https_api_binance_us_sapi) < 0) __PYX_ERR(0, 332, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":333
 *                 self.API_URL = "https://api.binance.us/api"
 *                 self.MARGIN_API_URL = " https://api.binance.us/sapi"
 *                 self.WEBSITE_URL = "https://www.binance.us"             # <<<<<<<<<<<<<<
 *                 self.FUTURES_URL = "https://fapi.binance.us/fapi"
 *                 self.FUTURES_DATA_URL = "https://fapi.binance.us/futures/data"
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_WEBSITE_URL, __pyx_mstate_global->__pyx_kp_u_https_www_binance_us) < 0) __PYX_ERR(0, 333, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":334
 *                 self.MARGIN_API_URL = " https://api.binance.us/sapi"
 *                 self.WEBSITE_URL = "https://www.binance.us"
 *                 self.FUTURES_URL = "https://fapi.binance.us/fapi"             # <<<<<<<<<<<<<<
 *                 self.FUTURES_DATA_URL = "https://fapi.binance.us/futures/data"
 *                 self.FUTURES_COIN_URL = "https://fapi.binance.us/fapi"
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_FUTURES_URL, __pyx_mstate_global->__pyx_kp_u_https_fapi_binance_us_fapi) < 0) __PYX_ERR(0, 334, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":335
 *                 self.WEBSITE_URL = "https://www.binance.us"
 *                 self.FUTURES_URL = "https://fapi.binance.us/fapi"
 *                 self.FUTURES_DATA_URL = "https://fapi.binance.us/futures/data"             # <<<<<<<<<<<<<<
 *                 self.FUTURES_COIN_URL = "https://fapi.binance.us/fapi"
 *                 self.FUTURES_COIN_DATA_URL = "https://dapi.binance.us/futures/data"
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_FUTURES_DATA_URL, __pyx_mstate_global->__pyx_kp_u_https_fapi_binance_us_futures_da) < 0) __PYX_ERR(0, 335, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":336
 *                 self.FUTURES_URL = "https://fapi.binance.us/fapi"
 *                 self.FUTURES_DATA_URL = "https://fapi.binance.us/futures/data"
 *                 self.FUTURES_COIN_URL = "https://fapi.binance.us/fapi"             # <<<<<<<<<<<<<<
 *                 self.FUTURES_COIN_DATA_URL = "https://dapi.binance.us/futures/data"
 *             elif self.exchange == "trbinance.com":
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_FUTURES_COIN_URL, __pyx_mstate_global->__pyx_kp_u_https_fapi_binance_us_fapi) < 0) __PYX_ERR(0, 336, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":337
 *                 self.FUTURES_DATA_URL = "https://fapi.binance.us/futures/data"
 *                 self.FUTURES_COIN_URL = "https://fapi.binance.us/fapi"
 *                 self.FUTURES_COIN_DATA_URL = "https://dapi.binance.us/futures/data"             # <<<<<<<<<<<<<<
 *             elif self.exchange == "trbinance.com":
 *                 # Todo: Needs a test
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_FUTURES_COIN_DATA_URL, __pyx_mstate_global->__pyx_kp_u_https_dapi_binance_us_futures_da) < 0) __PYX_ERR(0, 337, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":329
 *                 self.FUTURES_COIN_URL = "https://fapi.binance.com/fapi"
 *                 self.FUTURES_COIN_DATA_URL = "https://dapi.binance.com/futures/data"
 *             elif self.exchange == "binance.us":             # <<<<<<<<<<<<<<
 *                 # Todo: Needs a test
 *                 self.API_URL = "https://api.binance.us/api"
*/
      goto __pyx_L9;
    }

    /* "unicorn_binance_rest_api/manager.py":338
 *                 self.FUTURES_COIN_URL = "https://fapi.binance.us/fapi"
 *                 self.FUTURES_COIN_DATA_URL = "https://dapi.binance.us/futures/data"
 *             elif self.exchange == "trbinance.com":             # <<<<<<<<<<<<<<
 *                 # Todo: Needs a test
 *                 self.API_URL = "https://www.trbinance.com/api"
*/
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_exchange); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 338, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_11 = (__Pyx_PyUnicode_Equals(__pyx_t_4, __pyx_mstate_global->__pyx_kp_u_trbinance_com, Py_EQ)); if (unlikely((__pyx_t_11 < 0))) __PYX_ERR(0, 338, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    if (__pyx_t_11) {

      /* "unicorn_binance_rest_api/manager.py":340
 *             elif self.exchange == "trbinance.com":
 *                 # Todo: Needs a test
 *                 self.API_URL = "https://www.trbinance.com/api"             # <<<<<<<<<<<<<<
 *                 self.MARGIN_API_URL = " https://api.trbinance.com/sapi"
 *                 self.WEBSITE_URL = "https://www.trbinance.com"
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_API_URL, __pyx_mstate_global->__pyx_kp_u_https_www_trbinance_com_api) < 0) __PYX_ERR(0, 340, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":341
 *                 # Todo: Needs a test
 *                 self.API_URL = "https://www.trbinance.com/api"
 *                 self.MARGIN_API_URL = " https://api.trbinance.com/sapi"             # <<<<<<<<<<<<<<
 *                 self.WEBSITE_URL = "https://www.trbinance.com"
 *                 self.FUTURES_URL = "https://fapi.trbinance.com/fapi"
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_MARGIN_API_URL, __pyx_mstate_global->__pyx_kp_u_https_api_trbinance_com_sapi) < 0) __PYX_ERR(0, 341, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":342
 *                 self.API_URL = "https://www.trbinance.com/api"
 *                 self.MARGIN_API_URL = " https://api.trbinance.com/sapi"
 *                 self.WEBSITE_URL = "https://www.trbinance.com"             # <<<<<<<<<<<<<<
 *                 self.FUTURES_URL = "https://fapi.trbinance.com/fapi"
 *                 self.FUTURES_DATA_URL = "https://fapi.trbinance.com/futures/data"
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_WEBSITE_URL, __pyx_mstate_global->__pyx_kp_u_https_www_trbinance_com) < 0) __PYX_ERR(0, 342, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":343
 *                 self.MARGIN_API_URL = " https://api.trbinance.com/sapi"
 *                 self.WEBSITE_URL = "https://www.trbinance.com"
 *                 self.FUTURES_URL = "https://fapi.trbinance.com/fapi"             # <<<<<<<<<<<<<<
 *                 self.FUTURES_DATA_URL = "https://fapi.trbinance.com/futures/data"
 *                 self.FUTURES_COIN_URL = "https://fapi.trbinance.com/fapi"
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_FUTURES_URL, __pyx_mstate_global->__pyx_kp_u_https_fapi_trbinance_com_fapi) < 0) __PYX_ERR(0, 343, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":344
 *                 self.WEBSITE_URL = "https://www.trbinance.com"
 *                 self.FUTURES_URL = "https://fapi.trbinance.com/fapi"
 *                 self.FUTURES_DATA_URL = "https://fapi.trbinance.com/futures/data"             # <<<<<<<<<<<<<<
 *                 self.FUTURES_COIN_URL = "https://fapi.trbinance.com/fapi"
 *                 self.FUTURES_COIN_DATA_URL = "https://dapi.trbinance.com/futures/data"
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_FUTURES_DATA_URL, __pyx_mstate_global->__pyx_kp_u_https_fapi_trbinance_com_futures) < 0) __PYX_ERR(0, 344, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":345
 *                 self.FUTURES_URL = "https://fapi.trbinance.com/fapi"
 *                 self.FUTURES_DATA_URL = "https://fapi.trbinance.com/futures/data"
 *                 self.FUTURES_COIN_URL = "https://fapi.trbinance.com/fapi"             # <<<<<<<<<<<<<<
 *                 self.FUTURES_COIN_DATA_URL = "https://dapi.trbinance.com/futures/data"
 *             elif self.exchange:
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_FUTURES_COIN_URL, __pyx_mstate_global->__pyx_kp_u_https_fapi_trbinance_com_fapi) < 0) __PYX_ERR(0, 345, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":346
 *                 self.FUTURES_DATA_URL = "https://fapi.trbinance.com/futures/data"
 *                 self.FUTURES_COIN_URL = "https://fapi.trbinance.com/fapi"
 *                 self.FUTURES_COIN_DATA_URL = "https://dapi.trbinance.com/futures/data"             # <<<<<<<<<<<<<<
 *             elif self.exchange:
 *                 # Unknown Exchange
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_FUTURES_COIN_DATA_URL, __pyx_mstate_global->__pyx_kp_u_https_dapi_trbinance_com_futures) < 0) __PYX_ERR(0, 346, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":338
 *                 self.FUTURES_COIN_URL = "https://fapi.binance.us/fapi"
 *                 self.FUTURES_COIN_DATA_URL = "https://dapi.binance.us/futures/data"
 *             elif self.exchange == "trbinance.com":             # <<<<<<<<<<<<<<
 *                 # Todo: Needs a test
 *                 self.API_URL = "https://www.trbinance.com/api"
*/
      goto __pyx_L9;
    }

    /* "unicorn_binance_rest_api/manager.py":347
 *                 self.FUTURES_COIN_URL = "https://fapi.trbinance.com/fapi"
 *                 self.FUTURES_COIN_DATA_URL = "https://dapi.trbinance.com/futures/data"
 *             elif self.exchange:             # <<<<<<<<<<<<<<
 *                 # Unknown Exchange
 *                 error_msg = f"Unknown exchange '{str(self.exchange)}'! Read the docs to see a list of supported " \
*/
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_exchange); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 347, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_11 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely((__pyx_t_11 < 0))) __PYX_ERR(0, 347, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    if (unlikely(__pyx_t_11)) {

      /* "unicorn_binance_rest_api/manager.py":349
 *             elif self.exchange:
 *                 # Unknown Exchange
 *                 error_msg = f"Unknown exchange '{str(self.exchange)}'! Read the docs to see a list of supported " \             # <<<<<<<<<<<<<<
 *                             "exchanges: https://oliver-zehentleitner.github.io/unicorn-binance-rest-api/readme.html#what-are-the-" \
 *                             "benefits-of-the-unicorn-binance-rest-api"
*/
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_exchange); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 349, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_5 = __Pyx_PyObject_Unicode(__pyx_t_4); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 349, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_12[0] = __pyx_mstate_global->__pyx_kp_u_Unknown_exchange;
      __pyx_t_12[1] = __pyx_t_5;
      __pyx_t_12[2] = __pyx_mstate_global->__pyx_kp_u_Read_the_docs_to_see_a_list_of;
      __pyx_t_4 = __Pyx_PyUnicode_Join(__pyx_t_12, 3, 18 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_5) + 184, 127 | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_5));
      if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 349, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_v_error_msg = ((PyObject*)__pyx_t_4);
      __pyx_t_4 = 0;

      /* "unicorn_binance_rest_api/manager.py":352
 *                             "exchanges: https://oliver-zehentleitner.github.io/unicorn-binance-rest-api/readme.html#what-are-the-" \
 *                             "benefits-of-the-unicorn-binance-rest-api"
 *                 logger.critical(error_msg)             # <<<<<<<<<<<<<<
 *                 self.stop_manager()
 *                 raise UnknownExchange(error_msg)
*/
      __pyx_t_5 = NULL;
      __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_mstate_global->__pyx_n_u_logger); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 352, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_mstate_global->__pyx_n_u_critical); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 352, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_9);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_10 = 1;
      #if CYTHON_UNPACK_METHODS
      if (unlikely(PyMethod_Check(__pyx_t_9))) {
        __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_9);
        assert(__pyx_t_5);
        PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_9);
        __Pyx_INCREF(__pyx_t_5);
        __Pyx_INCREF(__pyx__function);
        __Pyx_DECREF_SET(__pyx_t_9, __pyx__function);
        __pyx_t_10 = 0;
      }
      #endif
      {
        PyObject *__pyx_callargs[2] = {__pyx_t_5, __pyx_v_error_msg};
        __pyx_t_4 = __Pyx_PyObject_FastCall(__pyx_t_9, __pyx_callargs+__pyx_t_10, (2-__pyx_t_10) | (__pyx_t_10*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
        __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 352, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_4);
      }
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

      /* "unicorn_binance_rest_api/manager.py":353
 *                             "benefits-of-the-unicorn-binance-rest-api"
 *                 logger.critical(error_msg)
 *                 self.stop_manager()             # <<<<<<<<<<<<<<
 *                 raise UnknownExchange(error_msg)
 *             else:
*/
      __pyx_t_9 = __pyx_v_self;
      __Pyx_INCREF(__pyx_t_9);
      __pyx_t_10 = 0;
      {
        PyObject *__pyx_callargs[2] = {__pyx_t_9, NULL};
        __pyx_t_4 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_stop_manager, __pyx_callargs+__pyx_t_10, (1-__pyx_t_10) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 353, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_4);
      }
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

      /* "unicorn_binance_rest_api/manager.py":354
 *                 logger.critical(error_msg)
 *                 self.stop_manager()
 *                 raise UnknownExchange(error_msg)             # <<<<<<<<<<<<<<
 *             else:
 *                 if tld is None:
*/
      __pyx_t_9 = NULL;
      __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_UnknownExchange); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 354, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_10 = 1;
      #if CYTHON_UNPACK_METHODS
      if (unlikely(PyMethod_Check(__pyx_t_5))) {
        __pyx_t_9 = PyMethod_GET_SELF(__pyx_t_5);
        assert(__pyx_t_9);
        PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_5);
        __Pyx_INCREF(__pyx_t_9);
        __Pyx_INCREF(__pyx__function);
        __Pyx_DECREF_SET(__pyx_t_5, __pyx__function);
        __pyx_t_10 = 0;
      }
      #endif
      {
        PyObject *__pyx_callargs[2] = {__pyx_t_9, __pyx_v_error_msg};
        __pyx_t_4 = __Pyx_PyObject_FastCall(__pyx_t_5, __pyx_callargs+__pyx_t_10, (2-__pyx_t_10) | (__pyx_t_10*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 354, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_4);
      }
      __Pyx_Raise(__pyx_t_4, 0, 0, 0);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __PYX_ERR(0, 354, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":347
 *                 self.FUTURES_COIN_URL = "https://fapi.trbinance.com/fapi"
 *                 self.FUTURES_COIN_DATA_URL = "https://dapi.trbinance.com/futures/data"
 *             elif self.exchange:             # <<<<<<<<<<<<<<
 *                 # Unknown Exchange
 *                 error_msg = f"Unknown exchange '{str(self.exchange)}'! Read the docs to see a list of supported " \
*/
    }

    /* "unicorn_binance_rest_api/manager.py":356
 *                 raise UnknownExchange(error_msg)
 *             else:
 *                 if tld is None:             # <<<<<<<<<<<<<<
 *                     self.API_URL = "https://api.binance.com/api"
 *                     self.MARGIN_API_URL = " https://api.binance.com/sapi"
*/
    /*else*/ {
      __pyx_t_11 = (__pyx_v_tld == ((PyObject*)Py_None));
      if (__pyx_t_11) {

        /* "unicorn_binance_rest_api/manager.py":357
 *             else:
 *                 if tld is None:
 *                     self.API_URL = "https://api.binance.com/api"             # <<<<<<<<<<<<<<
 *                     self.MARGIN_API_URL = " https://api.binance.com/sapi"
 *                     self.WEBSITE_URL = "https://www.binance.com"
*/
        if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_API_URL, __pyx_mstate_global->__pyx_kp_u_https_api_binance_com_api) < 0) __PYX_ERR(0, 357, __pyx_L1_error)

        /* "unicorn_binance_rest_api/manager.py":358
 *                 if tld is None:
 *                     self.API_URL = "https://api.binance.com/api"
 *                     self.MARGIN_API_URL = " https://api.binance.com/sapi"             # <<<<<<<<<<<<<<
 *                     self.WEBSITE_URL = "https://www.binance.com"
 *                     self.FUTURES_URL = "https://fapi.binance.com/fapi"
*/
        if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_MARGIN_API_URL, __pyx_mstate_global->__pyx_kp_u_https_api_binance_com_sapi) < 0) __PYX_ERR(0, 358, __pyx_L1_error)

        /* "unicorn_binance_rest_api/manager.py":359
 *                     self.API_URL = "https://api.binance.com/api"
 *                     self.MARGIN_API_URL = " https://api.binance.com/sapi"
 *                     self.WEBSITE_URL = "https://www.binance.com"             # <<<<<<<<<<<<<<
 *                     self.FUTURES_URL = "https://fapi.binance.com/fapi"
 *                     self.FUTURES_DATA_URL = "https://fapi.binance.com/futures/data"
*/
        if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_WEBSITE_URL, __pyx_mstate_global->__pyx_kp_u_https_www_binance_com) < 0) __PYX_ERR(0, 359, __pyx_L1_error)

        /* "unicorn_binance_rest_api/manager.py":360
 *                     self.MARGIN_API_URL = " https://api.binance.com/sapi"
 *                     self.WEBSITE_URL = "https://www.binance.com"
 *                     self.FUTURES_URL = "https://fapi.binance.com/fapi"             # <<<<<<<<<<<<<<
 *                     self.FUTURES_DATA_URL = "https://fapi.binance.com/futures/data"
 *                     self.FUTURES_COIN_URL = "https://fapi.binance.com/fapi"
*/
        if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_FUTURES_URL, __pyx_mstate_global->__pyx_kp_u_https_fapi_binance_com_fapi) < 0) __PYX_ERR(0, 360, __pyx_L1_error)

        /* "unicorn_binance_rest_api/manager.py":361
 *                     self.WEBSITE_URL = "https://www.binance.com"
 *                     self.FUTURES_URL = "https://fapi.binance.com/fapi"
 *                     self.FUTURES_DATA_URL = "https://fapi.binance.com/futures/data"             # <<<<<<<<<<<<<<
 *                     self.FUTURES_COIN_URL = "https://fapi.binance.com/fapi"
 *                     self.FUTURES_COIN_DATA_URL = "https://dapi.binance.com/futures/data"
*/
        if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_FUTURES_DATA_URL, __pyx_mstate_global->__pyx_kp_u_https_fapi_binance_com_futures_d) < 0) __PYX_ERR(0, 361, __pyx_L1_error)

        /* "unicorn_binance_rest_api/manager.py":362
 *                     self.FUTURES_URL = "https://fapi.binance.com/fapi"
 *                     self.FUTURES_DATA_URL = "https://fapi.binance.com/futures/data"
 *                     self.FUTURES_COIN_URL = "https://fapi.binance.com/fapi"             # <<<<<<<<<<<<<<
 *                     self.FUTURES_COIN_DATA_URL = "https://dapi.binance.com/futures/data"
 * 
*/
        if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_FUTURES_COIN_URL, __pyx_mstate_global->__pyx_kp_u_https_fapi_binance_com_fapi) < 0) __PYX_ERR(0, 362, __pyx_L1_error)

        /* "unicorn_binance_rest_api/manager.py":363
 *                     self.FUTURES_DATA_URL = "https://fapi.binance.com/futures/data"
 *                     self.FUTURES_COIN_URL = "https://fapi.binance.com/fapi"
 *                     self.FUTURES_COIN_DATA_URL = "https://dapi.binance.com/futures/data"             # <<<<<<<<<<<<<<
 * 
 *             if self.debug:
*/
        if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_FUTURES_COIN_DATA_URL, __pyx_mstate_global->__pyx_kp_u_https_dapi_binance_com_futures_d) < 0) __PYX_ERR(0, 363, __pyx_L1_error)

        /* "unicorn_binance_rest_api/manager.py":356
 *                 raise UnknownExchange(error_msg)
 *             else:
 *                 if tld is None:             # <<<<<<<<<<<<<<
 *                     self.API_URL = "https://api.binance.com/api"
 *                     self.MARGIN_API_URL = " https://api.binance.com/sapi"
*/
      }
    }
    __pyx_L9:;

    /* "unicorn_binance_rest_api/manager.py":365
 *                     self.FUTURES_COIN_DATA_URL = "https://dapi.binance.com/futures/data"
 * 
 *             if self.debug:             # <<<<<<<<<<<<<<
 *                 print(f"tld: {tld}, exchange: {exchange}\r\n"
 *                       f"self.API_URL: {self.API_URL}\r\nself.MARGIN_API_URL: {self.MARGIN_API_URL}\r\n"
*/
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_debug); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 365, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_11 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely((__pyx_t_11 < 0))) __PYX_ERR(0, 365, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    if (__pyx_t_11) {

      /* "unicorn_binance_rest_api/manager.py":366
 * 
 *             if self.debug:
 *                 print(f"tld: {tld}, exchange: {exchange}\r\n"             # <<<<<<<<<<<<<<
 *                       f"self.API_URL: {self.API_URL}\r\nself.MARGIN_API_URL: {self.MARGIN_API_URL}\r\n"
 *                       f"self.WEBSITE_URL: {self.WEBSITE_URL}\r\nself.FUTURES_URL: {self.FUTURES_URL}\r\n"
*/
      __pyx_t_5 = NULL;
      __Pyx_INCREF(__pyx_builtin_print);
      __pyx_t_9 = __pyx_builtin_print; 
      __pyx_t_1 = __Pyx_PyUnicode_Unicode(__pyx_v_tld); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 366, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyUnicode_Unicode(__pyx_v_exchange); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 366, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_2);

      /* "unicorn_binance_rest_api/manager.py":367
 *             if self.debug:
 *                 print(f"tld: {tld}, exchange: {exchange}\r\n"
 *                       f"self.API_URL: {self.API_URL}\r\nself.MARGIN_API_URL: {self.MARGIN_API_URL}\r\n"             # <<<<<<<<<<<<<<
 *                       f"self.WEBSITE_URL: {self.WEBSITE_URL}\r\nself.FUTURES_URL: {self.FUTURES_URL}\r\n"
 *                       f"self.FUTURES_DATA_URL: {self.FUTURES_DATA_URL}\r\nself.FUTURES_COIN_URL: "
*/
      __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_API_URL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 367, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_7);
      __pyx_t_6 = __Pyx_PyObject_FormatSimple(__pyx_t_7, __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 367, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_MARGIN_API_URL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 367, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_7);
      __pyx_t_3 = __Pyx_PyObject_FormatSimple(__pyx_t_7, __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 367, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;

      /* "unicorn_binance_rest_api/manager.py":368
 *                 print(f"tld: {tld}, exchange: {exchange}\r\n"
 *                       f"self.API_URL: {self.API_URL}\r\nself.MARGIN_API_URL: {self.MARGIN_API_URL}\r\n"
 *                       f"self.WEBSITE_URL: {self.WEBSITE_URL}\r\nself.FUTURES_URL: {self.FUTURES_URL}\r\n"             # <<<<<<<<<<<<<<
 *                       f"self.FUTURES_DATA_URL: {self.FUTURES_DATA_URL}\r\nself.FUTURES_COIN_URL: "
 *                       f"{self.FUTURES_COIN_URL}\r\n"
*/
      __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_WEBSITE_URL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 368, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_7);
      __pyx_t_14 = __Pyx_PyObject_FormatSimple(__pyx_t_7, __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 368, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_14);
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_FUTURES_URL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 368, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_7);
      __pyx_t_15 = __Pyx_PyObject_FormatSimple(__pyx_t_7, __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 368, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_15);
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;

      /* "unicorn_binance_rest_api/manager.py":369
 *                       f"self.API_URL: {self.API_URL}\r\nself.MARGIN_API_URL: {self.MARGIN_API_URL}\r\n"
 *                       f"self.WEBSITE_URL: {self.WEBSITE_URL}\r\nself.FUTURES_URL: {self.FUTURES_URL}\r\n"
 *                       f"self.FUTURES_DATA_URL: {self.FUTURES_DATA_URL}\r\nself.FUTURES_COIN_URL: "             # <<<<<<<<<<<<<<
 *                       f"{self.FUTURES_COIN_URL}\r\n"
 *                       f"self.FUTURES_COIN_DATA_URL: {self.FUTURES_COIN_DATA_URL}")
*/
      __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_FUTURES_DATA_URL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 369, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_7);
      __pyx_t_16 = __Pyx_PyObject_FormatSimple(__pyx_t_7, __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 369, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_16);
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;

      /* "unicorn_binance_rest_api/manager.py":370
 *                       f"self.WEBSITE_URL: {self.WEBSITE_URL}\r\nself.FUTURES_URL: {self.FUTURES_URL}\r\n"
 *                       f"self.FUTURES_DATA_URL: {self.FUTURES_DATA_URL}\r\nself.FUTURES_COIN_URL: "
 *                       f"{self.FUTURES_COIN_URL}\r\n"             # <<<<<<<<<<<<<<
 *                       f"self.FUTURES_COIN_DATA_URL: {self.FUTURES_COIN_DATA_URL}")
 * 
*/
      __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_FUTURES_COIN_URL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 370, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_7);
      __pyx_t_17 = __Pyx_PyObject_FormatSimple(__pyx_t_7, __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_17)) __PYX_ERR(0, 370, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_17);
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;

      /* "unicorn_binance_rest_api/manager.py":371
 *                       f"self.FUTURES_DATA_URL: {self.FUTURES_DATA_URL}\r\nself.FUTURES_COIN_URL: "
 *                       f"{self.FUTURES_COIN_URL}\r\n"
 *                       f"self.FUTURES_COIN_DATA_URL: {self.FUTURES_COIN_DATA_URL}")             # <<<<<<<<<<<<<<
 * 
 *             self.API_KEY = api_key
*/
      __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_FUTURES_COIN_DATA_URL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 371, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_7);
      __pyx_t_18 = __Pyx_PyObject_FormatSimple(__pyx_t_7, __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_18)) __PYX_ERR(0, 371, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_18);
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __pyx_t_19[0] = __pyx_mstate_global->__pyx_kp_u_tld_2;
      __pyx_t_19[1] = __pyx_t_1;
      __pyx_t_19[2] = __pyx_mstate_global->__pyx_kp_u_exchange_2;
      __pyx_t_19[3] = __pyx_t_2;
      __pyx_t_19[4] = __pyx_mstate_global->__pyx_kp_u_self_API_URL;
      __pyx_t_19[5] = __pyx_t_6;
      __pyx_t_19[6] = __pyx_mstate_global->__pyx_kp_u_self_MARGIN_API_URL;
      __pyx_t_19[7] = __pyx_t_3;
      __pyx_t_19[8] = __pyx_mstate_global->__pyx_kp_u_self_WEBSITE_URL;
      __pyx_t_19[9] = __pyx_t_14;
      __pyx_t_19[10] = __pyx_mstate_global->__pyx_kp_u_self_FUTURES_URL;
      __pyx_t_19[11] = __pyx_t_15;
      __pyx_t_19[12] = __pyx_mstate_global->__pyx_kp_u_self_FUTURES_DATA_URL;
      __pyx_t_19[13] = __pyx_t_16;
      __pyx_t_19[14] = __pyx_mstate_global->__pyx_kp_u_self_FUTURES_COIN_URL;
      __pyx_t_19[15] = __pyx_t_17;
      __pyx_t_19[16] = __pyx_mstate_global->__pyx_kp_u_self_FUTURES_COIN_DATA_URL;
      __pyx_t_19[17] = __pyx_t_18;

      /* "unicorn_binance_rest_api/manager.py":366
 * 
 *             if self.debug:
 *                 print(f"tld: {tld}, exchange: {exchange}\r\n"             # <<<<<<<<<<<<<<
 *                       f"self.API_URL: {self.API_URL}\r\nself.MARGIN_API_URL: {self.MARGIN_API_URL}\r\n"
 *                       f"self.WEBSITE_URL: {self.WEBSITE_URL}\r\nself.FUTURES_URL: {self.FUTURES_URL}\r\n"
*/
      __pyx_t_7 = __Pyx_PyUnicode_Join(__pyx_t_19, 18, 5 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_1) + 12 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_2) + 16 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_6) + 23 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_3) + 20 * 2 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_14) + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_15) + 25 * 2 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_16) + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_17) + 30 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_18), 127 | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_1) | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_2) | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_6) | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_3) | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_14) | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_15) | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_16) | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_17) | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_18));
      if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 366, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_7);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
      __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
      __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0;
      __Pyx_DECREF(__pyx_t_17); __pyx_t_17 = 0;
      __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0;
      __pyx_t_10 = 1;
      {
        PyObject *__pyx_callargs[2] = {__pyx_t_5, __pyx_t_7};
        __pyx_t_4 = __Pyx_PyObject_FastCall(__pyx_t_9, __pyx_callargs+__pyx_t_10, (2-__pyx_t_10) | (__pyx_t_10*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
        __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 366, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_4);
      }
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

      /* "unicorn_binance_rest_api/manager.py":365
 *                     self.FUTURES_COIN_DATA_URL = "https://dapi.binance.com/futures/data"
 * 
 *             if self.debug:             # <<<<<<<<<<<<<<
 *                 print(f"tld: {tld}, exchange: {exchange}\r\n"
 *                       f"self.API_URL: {self.API_URL}\r\nself.MARGIN_API_URL: {self.MARGIN_API_URL}\r\n"
*/
    }

    /* "unicorn_binance_rest_api/manager.py":373
 *                       f"self.FUTURES_COIN_DATA_URL: {self.FUTURES_COIN_DATA_URL}")
 * 
 *             self.API_KEY = api_key             # <<<<<<<<<<<<<<
 *             self.API_SECRET = api_secret
 *             self.last_update_check_github = {'timestamp': time.time(), 'status': {'tag_name': None}}
*/
    if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_API_KEY, __pyx_v_api_key) < 0) __PYX_ERR(0, 373, __pyx_L1_error)

    /* "unicorn_binance_rest_api/manager.py":374
 * 
 *             self.API_KEY = api_key
 *             self.API_SECRET = api_secret             # <<<<<<<<<<<<<<
 *             self.last_update_check_github = {'timestamp': time.time(), 'status': {'tag_name': None}}
 *             self._requests_params = requests_params
*/
    if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_API_SECRET, __pyx_v_api_secret) < 0) __PYX_ERR(0, 374, __pyx_L1_error)

    /* "unicorn_binance_rest_api/manager.py":375
 *             self.API_KEY = api_key
 *             self.API_SECRET = api_secret
 *             self.last_update_check_github = {'timestamp': time.time(), 'status': {'tag_name': None}}             # <<<<<<<<<<<<<<
 *             self._requests_params = requests_params
 *             self.response = None
*/
    __pyx_t_4 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 375, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_7 = NULL;
    __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_time); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 375, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_18 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_time); if (unlikely(!__pyx_t_18)) __PYX_ERR(0, 375, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_18);
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    __pyx_t_10 = 1;
    #if CYTHON_UNPACK_METHODS
    if (unlikely(PyMethod_Check(__pyx_t_18))) {
      __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_18);
      assert(__pyx_t_7);
      PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_18);
      __Pyx_INCREF(__pyx_t_7);
      __Pyx_INCREF(__pyx__function);
      __Pyx_DECREF_SET(__pyx_t_18, __pyx__function);
      __pyx_t_10 = 0;
    }
    #endif
    {
      PyObject *__pyx_callargs[2] = {__pyx_t_7, NULL};
      __pyx_t_9 = __Pyx_PyObject_FastCall(__pyx_t_18, __pyx_callargs+__pyx_t_10, (1-__pyx_t_10) | (__pyx_t_10*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
      __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
      __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0;
      if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 375, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_9);
    }
    if (PyDict_SetItem(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_timestamp, __pyx_t_9) < 0) __PYX_ERR(0, 375, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
    __pyx_t_9 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 375, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_9);
    if (PyDict_SetItem(__pyx_t_9, __pyx_mstate_global->__pyx_n_u_tag_name, Py_None) < 0) __PYX_ERR(0, 375, __pyx_L1_error)
    if (PyDict_SetItem(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_status, __pyx_t_9) < 0) __PYX_ERR(0, 375, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
    if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_last_update_check_github, __pyx_t_4) < 0) __PYX_ERR(0, 375, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

    /* "unicorn_binance_rest_api/manager.py":376
 *             self.API_SECRET = api_secret
 *             self.last_update_check_github = {'timestamp': time.time(), 'status': {'tag_name': None}}
 *             self._requests_params = requests_params             # <<<<<<<<<<<<<<
 *             self.response = None
 *             self.session = self._init_session()
*/
    if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_requests_params_2, __pyx_v_requests_params) < 0) __PYX_ERR(0, 376, __pyx_L1_error)

    /* "unicorn_binance_rest_api/manager.py":377
 *             self.last_update_check_github = {'timestamp': time.time(), 'status': {'tag_name': None}}
 *             self._requests_params = requests_params
 *             self.response = None             # <<<<<<<<<<<<<<
 *             self.session = self._init_session()
 *             self.used_weight: Optional[dict] = None
*/
    if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_response, Py_None) < 0) __PYX_ERR(0, 377, __pyx_L1_error)

    /* "unicorn_binance_rest_api/manager.py":378
 *             self._requests_params = requests_params
 *             self.response = None
 *             self.session = self._init_session()             # <<<<<<<<<<<<<<
 *             self.used_weight: Optional[dict] = None
 *             self.timestamp_offset = 0
*/
    __pyx_t_9 = __pyx_v_self;
    __Pyx_INCREF(__pyx_t_9);
    __pyx_t_10 = 0;
    {
      PyObject *__pyx_callargs[2] = {__pyx_t_9, NULL};
      __pyx_t_4 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_init_session, __pyx_callargs+__pyx_t_10, (1-__pyx_t_10) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
      __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
      if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 378, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_4);
    }
    if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_session, __pyx_t_4) < 0) __PYX_ERR(0, 378, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

    /* "unicorn_binance_rest_api/manager.py":379
 *             self.response = None
 *             self.session = self._init_session()
 *             self.used_weight: Optional[dict] = None             # <<<<<<<<<<<<<<
 *             self.timestamp_offset = 0
 * 
*/
    if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_used_weight, Py_None) < 0) __PYX_ERR(0, 379, __pyx_L1_error)

    /* "unicorn_binance_rest_api/manager.py":380
 *             self.session = self._init_session()
 *             self.used_weight: Optional[dict] = None
 *             self.timestamp_offset = 0             # <<<<<<<<<<<<<<
 * 
 *             # Cache DNS, init request session, get `used_weight` and calculate timestamp offset between local and
*/
    if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_timestamp_offset, __pyx_mstate_global->__pyx_int_0) < 0) __PYX_ERR(0, 380, __pyx_L1_error)

    /* "unicorn_binance_rest_api/manager.py":384
 *             # Cache DNS, init request session, get `used_weight` and calculate timestamp offset between local and
 *             # binance api server
 *             res = self.get_server_time()             # <<<<<<<<<<<<<<
 *             try:
 *                 self.timestamp_offset = res['serverTime'] - int(time.time() * 1000)
*/
    __pyx_t_9 = __pyx_v_self;
    __Pyx_INCREF(__pyx_t_9);
    __pyx_t_10 = 0;
    {
      PyObject *__pyx_callargs[2] = {__pyx_t_9, NULL};
      __pyx_t_4 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_get_server_time, __pyx_callargs+__pyx_t_10, (1-__pyx_t_10) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
      __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
      if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 384, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_4);
    }
    __pyx_v_res = __pyx_t_4;
    __pyx_t_4 = 0;

    /* "unicorn_binance_rest_api/manager.py":385
 *             # binance api server
 *             res = self.get_server_time()
 *             try:             # <<<<<<<<<<<<<<
 *                 self.timestamp_offset = res['serverTime'] - int(time.time() * 1000)
 *             except KeyError:
*/
    {
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __Pyx_ExceptionSave(&__pyx_t_20, &__pyx_t_21, &__pyx_t_22);
      __Pyx_XGOTREF(__pyx_t_20);
      __Pyx_XGOTREF(__pyx_t_21);
      __Pyx_XGOTREF(__pyx_t_22);
      /*try:*/ {

        /* "unicorn_binance_rest_api/manager.py":386
 *             res = self.get_server_time()
 *             try:
 *                 self.timestamp_offset = res['serverTime'] - int(time.time() * 1000)             # <<<<<<<<<<<<<<
 *             except KeyError:
 *                 self.timestamp_offset = 0
*/
        __pyx_t_4 = __Pyx_PyObject_Dict_GetItem(__pyx_v_res, __pyx_mstate_global->__pyx_n_u_serverTime); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 386, __pyx_L16_error)
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_18 = NULL;
        __Pyx_GetModuleGlobalName(__pyx_t_7, __pyx_mstate_global->__pyx_n_u_time); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 386, __pyx_L16_error)
        __Pyx_GOTREF(__pyx_t_7);
        __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_mstate_global->__pyx_n_u_time); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 386, __pyx_L16_error)
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        __pyx_t_10 = 1;
        #if CYTHON_UNPACK_METHODS
        if (unlikely(PyMethod_Check(__pyx_t_5))) {
          __pyx_t_18 = PyMethod_GET_SELF(__pyx_t_5);
          assert(__pyx_t_18);
          PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_5);
          __Pyx_INCREF(__pyx_t_18);
          __Pyx_INCREF(__pyx__function);
          __Pyx_DECREF_SET(__pyx_t_5, __pyx__function);
          __pyx_t_10 = 0;
        }
        #endif
        {
          PyObject *__pyx_callargs[2] = {__pyx_t_18, NULL};
          __pyx_t_9 = __Pyx_PyObject_FastCall(__pyx_t_5, __pyx_callargs+__pyx_t_10, (1-__pyx_t_10) | (__pyx_t_10*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
          __Pyx_XDECREF(__pyx_t_18); __pyx_t_18 = 0;
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 386, __pyx_L16_error)
          __Pyx_GOTREF(__pyx_t_9);
        }
        __pyx_t_5 = __Pyx_PyLong_MultiplyObjC(__pyx_t_9, __pyx_mstate_global->__pyx_int_1000, 0x3E8, 0, 0); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 386, __pyx_L16_error)
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        __pyx_t_9 = __Pyx_PyNumber_Int(__pyx_t_5); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 386, __pyx_L16_error)
        __Pyx_GOTREF(__pyx_t_9);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __pyx_t_5 = PyNumber_Subtract(__pyx_t_4, __pyx_t_9); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 386, __pyx_L16_error)
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_timestamp_offset, __pyx_t_5) < 0) __PYX_ERR(0, 386, __pyx_L16_error)
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;

        /* "unicorn_binance_rest_api/manager.py":385
 *             # binance api server
 *             res = self.get_server_time()
 *             try:             # <<<<<<<<<<<<<<
 *                 self.timestamp_offset = res['serverTime'] - int(time.time() * 1000)
 *             except KeyError:
*/
      }
      __Pyx_XDECREF(__pyx_t_20); __pyx_t_20 = 0;
      __Pyx_XDECREF(__pyx_t_21); __pyx_t_21 = 0;
      __Pyx_XDECREF(__pyx_t_22); __pyx_t_22 = 0;
      goto __pyx_L21_try_end;
      __pyx_L16_error:;
      __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;
      __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
      __Pyx_XDECREF(__pyx_t_16); __pyx_t_16 = 0;
      __Pyx_XDECREF(__pyx_t_17); __pyx_t_17 = 0;
      __Pyx_XDECREF(__pyx_t_18); __pyx_t_18 = 0;
      __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
      __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;

      /* "unicorn_binance_rest_api/manager.py":387
 *             try:
 *                 self.timestamp_offset = res['serverTime'] - int(time.time() * 1000)
 *             except KeyError:             # <<<<<<<<<<<<<<
 *                 self.timestamp_offset = 0
 * 
*/
      __pyx_t_23 = __Pyx_PyErr_ExceptionMatches(__pyx_builtin_KeyError);
      if (__pyx_t_23) {
        __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename);
        if (__Pyx_GetException(&__pyx_t_5, &__pyx_t_9, &__pyx_t_4) < 0) __PYX_ERR(0, 387, __pyx_L18_except_error)
        __Pyx_XGOTREF(__pyx_t_5);
        __Pyx_XGOTREF(__pyx_t_9);
        __Pyx_XGOTREF(__pyx_t_4);

        /* "unicorn_binance_rest_api/manager.py":388
 *                 self.timestamp_offset = res['serverTime'] - int(time.time() * 1000)
 *             except KeyError:
 *                 self.timestamp_offset = 0             # <<<<<<<<<<<<<<
 * 
 *             if warn_on_update and self.is_update_availabe():
*/
        if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_timestamp_offset, __pyx_mstate_global->__pyx_int_0) < 0) __PYX_ERR(0, 388, __pyx_L18_except_error)
        __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        goto __pyx_L17_exception_handled;
      }
      goto __pyx_L18_except_error;

      /* "unicorn_binance_rest_api/manager.py":385
 *             # binance api server
 *             res = self.get_server_time()
 *             try:             # <<<<<<<<<<<<<<
 *                 self.timestamp_offset = res['serverTime'] - int(time.time() * 1000)
 *             except KeyError:
*/
      __pyx_L18_except_error:;
      __Pyx_XGIVEREF(__pyx_t_20);
      __Pyx_XGIVEREF(__pyx_t_21);
      __Pyx_XGIVEREF(__pyx_t_22);
      __Pyx_ExceptionReset(__pyx_t_20, __pyx_t_21, __pyx_t_22);
      goto __pyx_L1_error;
      __pyx_L17_exception_handled:;
      __Pyx_XGIVEREF(__pyx_t_20);
      __Pyx_XGIVEREF(__pyx_t_21);
      __Pyx_XGIVEREF(__pyx_t_22);
      __Pyx_ExceptionReset(__pyx_t_20, __pyx_t_21, __pyx_t_22);
      __pyx_L21_try_end:;
    }

    /* "unicorn_binance_rest_api/manager.py":390
 *                 self.timestamp_offset = 0
 * 
 *             if warn_on_update and self.is_update_availabe():             # <<<<<<<<<<<<<<
 *                 update_msg = f"Release {self.name}_" + self.get_latest_version() + " is available, " \
 *                              f"please consider updating! Changelog: " \
*/
    __pyx_t_13 = __Pyx_PyObject_IsTrue(__pyx_v_warn_on_update); if (unlikely((__pyx_t_13 < 0))) __PYX_ERR(0, 390, __pyx_L1_error)
    if (__pyx_t_13) {
    } else {
      __pyx_t_11 = __pyx_t_13;
      goto __pyx_L25_bool_binop_done;
    }
    __pyx_t_9 = __pyx_v_self;
    __Pyx_INCREF(__pyx_t_9);
    __pyx_t_10 = 0;
    {
      PyObject *__pyx_callargs[2] = {__pyx_t_9, NULL};
      __pyx_t_4 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_is_update_availabe, __pyx_callargs+__pyx_t_10, (1-__pyx_t_10) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
      __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
      if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 390, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_4);
    }
    __pyx_t_13 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely((__pyx_t_13 < 0))) __PYX_ERR(0, 390, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_11 = __pyx_t_13;
    __pyx_L25_bool_binop_done:;
    if (__pyx_t_11) {

      /* "unicorn_binance_rest_api/manager.py":391
 * 
 *             if warn_on_update and self.is_update_availabe():
 *                 update_msg = f"Release {self.name}_" + self.get_latest_version() + " is available, " \             # <<<<<<<<<<<<<<
 *                              f"please consider updating! Changelog: " \
 *                              f"https://oliver-zehentleitner.github.io/unicorn-binance-rest-api/changelog.html"
*/
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_name); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 391, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_9 = __Pyx_PyObject_FormatSimple(__pyx_t_4, __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 391, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_9);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_12[0] = __pyx_mstate_global->__pyx_kp_u_Release;
      __pyx_t_12[1] = __pyx_t_9;
      __pyx_t_12[2] = __pyx_mstate_global->__pyx_n_u__5;
      __pyx_t_4 = __Pyx_PyUnicode_Join(__pyx_t_12, 3, 8 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_9) + 1, 127 | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_9));
      if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 391, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      __pyx_t_5 = __pyx_v_self;
      __Pyx_INCREF(__pyx_t_5);
      __pyx_t_10 = 0;
      {
        PyObject *__pyx_callargs[2] = {__pyx_t_5, NULL};
        __pyx_t_9 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_get_latest_version, __pyx_callargs+__pyx_t_10, (1-__pyx_t_10) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
        __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
        if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 391, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_9);
      }
      __pyx_t_5 = PyNumber_Add(__pyx_t_4, __pyx_t_9); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 391, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      __pyx_t_9 = PyNumber_Add(__pyx_t_5, __pyx_mstate_global->__pyx_kp_u_is_available_please_consider_up); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 391, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_9);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_v_update_msg = __pyx_t_9;
      __pyx_t_9 = 0;

      /* "unicorn_binance_rest_api/manager.py":394
 *                              f"please consider updating! Changelog: " \
 *                              f"https://oliver-zehentleitner.github.io/unicorn-binance-rest-api/changelog.html"
 *                 print(update_msg)             # <<<<<<<<<<<<<<
 *                 logger.warning(update_msg)
 * 
*/
      __pyx_t_5 = NULL;
      __Pyx_INCREF(__pyx_builtin_print);
      __pyx_t_4 = __pyx_builtin_print; 
      __pyx_t_10 = 1;
      {
        PyObject *__pyx_callargs[2] = {__pyx_t_5, __pyx_v_update_msg};
        __pyx_t_9 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+__pyx_t_10, (2-__pyx_t_10) | (__pyx_t_10*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
        __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 394, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_9);
      }
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;

      /* "unicorn_binance_rest_api/manager.py":395
 *                              f"https://oliver-zehentleitner.github.io/unicorn-binance-rest-api/changelog.html"
 *                 print(update_msg)
 *                 logger.warning(update_msg)             # <<<<<<<<<<<<<<
 * 
 *     def __enter__(self):
*/
      __pyx_t_4 = NULL;
      __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_logger); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 395, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_18 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_warning); if (unlikely(!__pyx_t_18)) __PYX_ERR(0, 395, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_18);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_t_10 = 1;
      #if CYTHON_UNPACK_METHODS
      if (unlikely(PyMethod_Check(__pyx_t_18))) {
        __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_18);
        assert(__pyx_t_4);
        PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_18);
        __Pyx_INCREF(__pyx_t_4);
        __Pyx_INCREF(__pyx__function);
        __Pyx_DECREF_SET(__pyx_t_18, __pyx__function);
        __pyx_t_10 = 0;
      }
      #endif
      {
        PyObject *__pyx_callargs[2] = {__pyx_t_4, __pyx_v_update_msg};
        __pyx_t_9 = __Pyx_PyObject_FastCall(__pyx_t_18, __pyx_callargs+__pyx_t_10, (2-__pyx_t_10) | (__pyx_t_10*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0;
        if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 395, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_9);
      }
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;

      /* "unicorn_binance_rest_api/manager.py":390
 *                 self.timestamp_offset = 0
 * 
 *             if warn_on_update and self.is_update_availabe():             # <<<<<<<<<<<<<<
 *                 update_msg = f"Release {self.name}_" + self.get_latest_version() + " is available, " \
 *                              f"please consider updating! Changelog: " \
*/
    }

    /* "unicorn_binance_rest_api/manager.py":220
 *         self.session = None
 * 
 *         if self.sigterm is False:             # <<<<<<<<<<<<<<
 *             if disable_colorama is not True:
 *                 logger.info(f"Initiating `colorama_{colorama.__version__}`")
*/
  }

  /* "unicorn_binance_rest_api/manager.py":199
 *     MINING_TO_FIAT = "MINING_C2C"
 * 
 *     def __init__(self,             # <<<<<<<<<<<<<<
 *                  api_key: Optional[str] = None,
 *                  api_secret: Optional[str] = None,
*/

  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_XDECREF(__pyx_t_9);
  __Pyx_XDECREF(__pyx_t_14);
  __Pyx_XDECREF(__pyx_t_15);
  __Pyx_XDECREF(__pyx_t_16);
  __Pyx_XDECREF(__pyx_t_17);
  __Pyx_XDECREF(__pyx_t_18);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_socks_proxy_uri);
  __Pyx_XDECREF(__pyx_v_error_msg);
  __Pyx_XDECREF(__pyx_v_res);
  __Pyx_XDECREF(__pyx_v_update_msg);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":397
 *                 logger.warning(update_msg)
 * 
 *     def __enter__(self):             # <<<<<<<<<<<<<<
 *         logger.debug(f"Entering with-context of BinanceRestApiManager() ...")
 *         if self.sigterm is True:
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_3__enter__(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_3__enter__ = {"__enter__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_3__enter__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_3__enter__(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("__enter__ (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 397, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 397, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "__enter__", 0) < 0) __PYX_ERR(0, 397, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("__enter__", 1, 1, 1, i); __PYX_ERR(0, 397, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 397, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("__enter__", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 397, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.__enter__", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_2__enter__(__pyx_self, __pyx_v_self);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_2__enter__(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
  PyObject *__pyx_v_info = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  PyObject *__pyx_t_4 = NULL;
  size_t __pyx_t_5;
  int __pyx_t_6;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("__enter__", 0);

  /* "unicorn_binance_rest_api/manager.py":398
 * 
 *     def __enter__(self):
 *         logger.debug(f"Entering with-context of BinanceRestApiManager() ...")             # <<<<<<<<<<<<<<
 *         if self.sigterm is True:
 *             info = f"`BinanceRestApiManager()` instance has already been stopped and cannot be used."
*/
  __pyx_t_2 = NULL;
  __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_logger); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 398, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_debug); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 398, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  __pyx_t_5 = 1;
  #if CYTHON_UNPACK_METHODS
  if (unlikely(PyMethod_Check(__pyx_t_4))) {
    __pyx_t_2 = PyMethod_GET_SELF(__pyx_t_4);
    assert(__pyx_t_2);
    PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_4);
    __Pyx_INCREF(__pyx_t_2);
    __Pyx_INCREF(__pyx__function);
    __Pyx_DECREF_SET(__pyx_t_4, __pyx__function);
    __pyx_t_5 = 0;
  }
  #endif
  {
    PyObject *__pyx_callargs[2] = {__pyx_t_2, __pyx_mstate_global->__pyx_kp_u_Entering_with_context_of_Binance};
    __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+__pyx_t_5, (2-__pyx_t_5) | (__pyx_t_5*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 398, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
  }
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

  /* "unicorn_binance_rest_api/manager.py":399
 *     def __enter__(self):
 *         logger.debug(f"Entering with-context of BinanceRestApiManager() ...")
 *         if self.sigterm is True:             # <<<<<<<<<<<<<<
 *             info = f"`BinanceRestApiManager()` instance has already been stopped and cannot be used."
 *             logger.critical(info)
*/
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_sigterm); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 399, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_6 = (__pyx_t_1 == Py_True);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  if (unlikely(__pyx_t_6)) {

    /* "unicorn_binance_rest_api/manager.py":400
 *         logger.debug(f"Entering with-context of BinanceRestApiManager() ...")
 *         if self.sigterm is True:
 *             info = f"`BinanceRestApiManager()` instance has already been stopped and cannot be used."             # <<<<<<<<<<<<<<
 *             logger.critical(info)
 *             raise AlreadyStoppedError(info)
*/
    __Pyx_INCREF(__pyx_mstate_global->__pyx_kp_u_BinanceRestApiManager_instance);
    __pyx_v_info = __pyx_mstate_global->__pyx_kp_u_BinanceRestApiManager_instance;

    /* "unicorn_binance_rest_api/manager.py":401
 *         if self.sigterm is True:
 *             info = f"`BinanceRestApiManager()` instance has already been stopped and cannot be used."
 *             logger.critical(info)             # <<<<<<<<<<<<<<
 *             raise AlreadyStoppedError(info)
 *         return self
*/
    __pyx_t_4 = NULL;
    __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_logger); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 401, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_critical); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 401, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_5 = 1;
    #if CYTHON_UNPACK_METHODS
    if (unlikely(PyMethod_Check(__pyx_t_3))) {
      __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_3);
      assert(__pyx_t_4);
      PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_3);
      __Pyx_INCREF(__pyx_t_4);
      __Pyx_INCREF(__pyx__function);
      __Pyx_DECREF_SET(__pyx_t_3, __pyx__function);
      __pyx_t_5 = 0;
    }
    #endif
    {
      PyObject *__pyx_callargs[2] = {__pyx_t_4, __pyx_v_info};
      __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+__pyx_t_5, (2-__pyx_t_5) | (__pyx_t_5*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
      __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 401, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_1);
    }
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

    /* "unicorn_binance_rest_api/manager.py":402
 *             info = f"`BinanceRestApiManager()` instance has already been stopped and cannot be used."
 *             logger.critical(info)
 *             raise AlreadyStoppedError(info)             # <<<<<<<<<<<<<<
 *         return self
 * 
*/
    __pyx_t_3 = NULL;
    __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_AlreadyStoppedError); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 402, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_5 = 1;
    #if CYTHON_UNPACK_METHODS
    if (unlikely(PyMethod_Check(__pyx_t_4))) {
      __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_4);
      assert(__pyx_t_3);
      PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_4);
      __Pyx_INCREF(__pyx_t_3);
      __Pyx_INCREF(__pyx__function);
      __Pyx_DECREF_SET(__pyx_t_4, __pyx__function);
      __pyx_t_5 = 0;
    }
    #endif
    {
      PyObject *__pyx_callargs[2] = {__pyx_t_3, __pyx_v_info};
      __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+__pyx_t_5, (2-__pyx_t_5) | (__pyx_t_5*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
      __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 402, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_1);
    }
    __Pyx_Raise(__pyx_t_1, 0, 0, 0);
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __PYX_ERR(0, 402, __pyx_L1_error)

    /* "unicorn_binance_rest_api/manager.py":399
 *     def __enter__(self):
 *         logger.debug(f"Entering with-context of BinanceRestApiManager() ...")
 *         if self.sigterm is True:             # <<<<<<<<<<<<<<
 *             info = f"`BinanceRestApiManager()` instance has already been stopped and cannot be used."
 *             logger.critical(info)
*/
  }

  /* "unicorn_binance_rest_api/manager.py":403
 *             logger.critical(info)
 *             raise AlreadyStoppedError(info)
 *         return self             # <<<<<<<<<<<<<<
 * 
 *     def __exit__(self, exc_type, exc_value, error_traceback):
*/
  __Pyx_XDECREF(__pyx_r);
  __Pyx_INCREF(__pyx_v_self);
  __pyx_r = __pyx_v_self;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":397
 *                 logger.warning(update_msg)
 * 
 *     def __enter__(self):             # <<<<<<<<<<<<<<
 *         logger.debug(f"Entering with-context of BinanceRestApiManager() ...")
 *         if self.sigterm is True:
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.__enter__", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_info);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":405
 *         return self
 * 
 *     def __exit__(self, exc_type, exc_value, error_traceback):             # <<<<<<<<<<<<<<
 *         logger.debug(f"Leaving with-context of BinanceRestApiManager() ...")
 *         self.stop_manager()
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_5__exit__(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_5__exit__ = {"__exit__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_5__exit__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_5__exit__(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_exc_type = 0;
  PyObject *__pyx_v_exc_value = 0;
  PyObject *__pyx_v_error_traceback = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[4] = {0,0,0,0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("__exit__ (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,&__pyx_mstate_global->__pyx_n_u_exc_type,&__pyx_mstate_global->__pyx_n_u_exc_value,&__pyx_mstate_global->__pyx_n_u_error_traceback,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 405, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  4:
        values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 405, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  3:
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 405, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 405, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 405, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "__exit__", 0) < 0) __PYX_ERR(0, 405, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 4; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("__exit__", 1, 4, 4, i); __PYX_ERR(0, 405, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 4)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 405, __pyx_L3_error)
      values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 405, __pyx_L3_error)
      values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 405, __pyx_L3_error)
      values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 405, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
    __pyx_v_exc_type = values[1];
    __pyx_v_exc_value = values[2];
    __pyx_v_error_traceback = values[3];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("__exit__", 1, 4, 4, __pyx_nargs); __PYX_ERR(0, 405, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.__exit__", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_4__exit__(__pyx_self, __pyx_v_self, __pyx_v_exc_type, __pyx_v_exc_value, __pyx_v_error_traceback);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_4__exit__(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_exc_type, PyObject *__pyx_v_exc_value, PyObject *__pyx_v_error_traceback) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  PyObject *__pyx_t_4 = NULL;
  size_t __pyx_t_5;
  int __pyx_t_6;
  PyObject *__pyx_t_7 = NULL;
  PyObject *__pyx_t_8 = NULL;
  PyObject *__pyx_t_9[6];
  PyObject *__pyx_t_10 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("__exit__", 0);

  /* "unicorn_binance_rest_api/manager.py":406
 * 
 *     def __exit__(self, exc_type, exc_value, error_traceback):
 *         logger.debug(f"Leaving with-context of BinanceRestApiManager() ...")             # <<<<<<<<<<<<<<
 *         self.stop_manager()
 *         if exc_type:
*/
  __pyx_t_2 = NULL;
  __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_logger); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 406, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_debug); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 406, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  __pyx_t_5 = 1;
  #if CYTHON_UNPACK_METHODS
  if (unlikely(PyMethod_Check(__pyx_t_4))) {
    __pyx_t_2 = PyMethod_GET_SELF(__pyx_t_4);
    assert(__pyx_t_2);
    PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_4);
    __Pyx_INCREF(__pyx_t_2);
    __Pyx_INCREF(__pyx__function);
    __Pyx_DECREF_SET(__pyx_t_4, __pyx__function);
    __pyx_t_5 = 0;
  }
  #endif
  {
    PyObject *__pyx_callargs[2] = {__pyx_t_2, __pyx_mstate_global->__pyx_kp_u_Leaving_with_context_of_BinanceR};
    __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+__pyx_t_5, (2-__pyx_t_5) | (__pyx_t_5*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 406, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
  }
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

  /* "unicorn_binance_rest_api/manager.py":407
 *     def __exit__(self, exc_type, exc_value, error_traceback):
 *         logger.debug(f"Leaving with-context of BinanceRestApiManager() ...")
 *         self.stop_manager()             # <<<<<<<<<<<<<<
 *         if exc_type:
 *             logger.critical(f"An exception occurred: {exc_type} - {exc_value} - {error_traceback}")
*/
  __pyx_t_4 = __pyx_v_self;
  __Pyx_INCREF(__pyx_t_4);
  __pyx_t_5 = 0;
  {
    PyObject *__pyx_callargs[2] = {__pyx_t_4, NULL};
    __pyx_t_1 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_stop_manager, __pyx_callargs+__pyx_t_5, (1-__pyx_t_5) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
    __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
    if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 407, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
  }
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

  /* "unicorn_binance_rest_api/manager.py":408
 *         logger.debug(f"Leaving with-context of BinanceRestApiManager() ...")
 *         self.stop_manager()
 *         if exc_type:             # <<<<<<<<<<<<<<
 *             logger.critical(f"An exception occurred: {exc_type} - {exc_value} - {error_traceback}")
 * 
*/
  __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_v_exc_type); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 408, __pyx_L1_error)
  if (__pyx_t_6) {

    /* "unicorn_binance_rest_api/manager.py":409
 *         self.stop_manager()
 *         if exc_type:
 *             logger.critical(f"An exception occurred: {exc_type} - {exc_value} - {error_traceback}")             # <<<<<<<<<<<<<<
 * 
 *     def _init_session(self):
*/
    __pyx_t_4 = NULL;
    __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_logger); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 409, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_critical); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 409, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_2 = __Pyx_PyObject_FormatSimple(__pyx_v_exc_type, __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 409, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_7 = __Pyx_PyObject_FormatSimple(__pyx_v_exc_value, __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 409, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_7);
    __pyx_t_8 = __Pyx_PyObject_FormatSimple(__pyx_v_error_traceback, __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 409, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_8);
    __pyx_t_9[0] = __pyx_mstate_global->__pyx_kp_u_An_exception_occurred;
    __pyx_t_9[1] = __pyx_t_2;
    __pyx_t_9[2] = __pyx_mstate_global->__pyx_kp_u__6;
    __pyx_t_9[3] = __pyx_t_7;
    __pyx_t_9[4] = __pyx_mstate_global->__pyx_kp_u__6;
    __pyx_t_9[5] = __pyx_t_8;
    __pyx_t_10 = __Pyx_PyUnicode_Join(__pyx_t_9, 6, 23 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_2) + 3 * 2 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_7) + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_8), 127 | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_2) | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_7) | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_8));
    if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 409, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_10);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
    __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
    __pyx_t_5 = 1;
    #if CYTHON_UNPACK_METHODS
    if (unlikely(PyMethod_Check(__pyx_t_3))) {
      __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_3);
      assert(__pyx_t_4);
      PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_3);
      __Pyx_INCREF(__pyx_t_4);
      __Pyx_INCREF(__pyx__function);
      __Pyx_DECREF_SET(__pyx_t_3, __pyx__function);
      __pyx_t_5 = 0;
    }
    #endif
    {
      PyObject *__pyx_callargs[2] = {__pyx_t_4, __pyx_t_10};
      __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+__pyx_t_5, (2-__pyx_t_5) | (__pyx_t_5*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
      __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 409, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_1);
    }
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

    /* "unicorn_binance_rest_api/manager.py":408
 *         logger.debug(f"Leaving with-context of BinanceRestApiManager() ...")
 *         self.stop_manager()
 *         if exc_type:             # <<<<<<<<<<<<<<
 *             logger.critical(f"An exception occurred: {exc_type} - {exc_value} - {error_traceback}")
 * 
*/
  }

  /* "unicorn_binance_rest_api/manager.py":405
 *         return self
 * 
 *     def __exit__(self, exc_type, exc_value, error_traceback):             # <<<<<<<<<<<<<<
 *         logger.debug(f"Leaving with-context of BinanceRestApiManager() ...")
 *         self.stop_manager()
*/

  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_XDECREF(__pyx_t_8);
  __Pyx_XDECREF(__pyx_t_10);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.__exit__", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":411
 *             logger.critical(f"An exception occurred: {exc_type} - {exc_value} - {error_traceback}")
 * 
 *     def _init_session(self):             # <<<<<<<<<<<<<<
 *         session = requests.session()
 *         session.headers.update({'Accept': 'application/json',
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_7_init_session(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_7_init_session = {"_init_session", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_7_init_session, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_7_init_session(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("_init_session (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 411, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 411, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "_init_session", 0) < 0) __PYX_ERR(0, 411, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("_init_session", 1, 1, 1, i); __PYX_ERR(0, 411, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 411, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("_init_session", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 411, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager._init_session", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_6_init_session(__pyx_self, __pyx_v_self);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_6_init_session(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
  PyObject *__pyx_v_session = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  PyObject *__pyx_t_4 = NULL;
  size_t __pyx_t_5;
  PyObject *__pyx_t_6 = NULL;
  PyObject *__pyx_t_7 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("_init_session", 0);

  /* "unicorn_binance_rest_api/manager.py":412
 * 
 *     def _init_session(self):
 *         session = requests.session()             # <<<<<<<<<<<<<<
 *         session.headers.update({'Accept': 'application/json',
 *                                 'User-Agent': str(self.get_user_agent()),
*/
  __pyx_t_2 = NULL;
  __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_requests); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 412, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_session); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 412, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  __pyx_t_5 = 1;
  #if CYTHON_UNPACK_METHODS
  if (unlikely(PyMethod_Check(__pyx_t_4))) {
    __pyx_t_2 = PyMethod_GET_SELF(__pyx_t_4);
    assert(__pyx_t_2);
    PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_4);
    __Pyx_INCREF(__pyx_t_2);
    __Pyx_INCREF(__pyx__function);
    __Pyx_DECREF_SET(__pyx_t_4, __pyx__function);
    __pyx_t_5 = 0;
  }
  #endif
  {
    PyObject *__pyx_callargs[2] = {__pyx_t_2, NULL};
    __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+__pyx_t_5, (1-__pyx_t_5) | (__pyx_t_5*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 412, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
  }
  __pyx_v_session = __pyx_t_1;
  __pyx_t_1 = 0;

  /* "unicorn_binance_rest_api/manager.py":413
 *     def _init_session(self):
 *         session = requests.session()
 *         session.headers.update({'Accept': 'application/json',             # <<<<<<<<<<<<<<
 *                                 'User-Agent': str(self.get_user_agent()),
 *                                 'X-MBX-APIKEY': str(self.API_KEY)})
*/
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_session, __pyx_mstate_global->__pyx_n_u_headers); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 413, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __pyx_t_4 = __pyx_t_2;
  __Pyx_INCREF(__pyx_t_4);
  __pyx_t_3 = __Pyx_PyDict_NewPresized(3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 413, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  if (PyDict_SetItem(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_Accept, __pyx_mstate_global->__pyx_kp_u_application_json) < 0) __PYX_ERR(0, 413, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":414
 *         session = requests.session()
 *         session.headers.update({'Accept': 'application/json',
 *                                 'User-Agent': str(self.get_user_agent()),             # <<<<<<<<<<<<<<
 *                                 'X-MBX-APIKEY': str(self.API_KEY)})
 *         return session
*/
  __pyx_t_7 = __pyx_v_self;
  __Pyx_INCREF(__pyx_t_7);
  __pyx_t_5 = 0;
  {
    PyObject *__pyx_callargs[2] = {__pyx_t_7, NULL};
    __pyx_t_6 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_get_user_agent, __pyx_callargs+__pyx_t_5, (1-__pyx_t_5) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
    __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
    if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 414, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_6);
  }
  __pyx_t_7 = __Pyx_PyObject_Unicode(__pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 414, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_7);
  __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
  if (PyDict_SetItem(__pyx_t_3, __pyx_mstate_global->__pyx_kp_u_User_Agent, __pyx_t_7) < 0) __PYX_ERR(0, 413, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;

  /* "unicorn_binance_rest_api/manager.py":415
 *         session.headers.update({'Accept': 'application/json',
 *                                 'User-Agent': str(self.get_user_agent()),
 *                                 'X-MBX-APIKEY': str(self.API_KEY)})             # <<<<<<<<<<<<<<
 *         return session
 * 
*/
  __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_API_KEY); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 415, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_7);
  __pyx_t_6 = __Pyx_PyObject_Unicode(__pyx_t_7); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 415, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_6);
  __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
  if (PyDict_SetItem(__pyx_t_3, __pyx_mstate_global->__pyx_kp_u_X_MBX_APIKEY, __pyx_t_6) < 0) __PYX_ERR(0, 413, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
  __pyx_t_5 = 0;
  {
    PyObject *__pyx_callargs[2] = {__pyx_t_4, __pyx_t_3};
    __pyx_t_1 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_update, __pyx_callargs+__pyx_t_5, (2-__pyx_t_5) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
    __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 413, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
  }
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

  /* "unicorn_binance_rest_api/manager.py":416
 *                                 'User-Agent': str(self.get_user_agent()),
 *                                 'X-MBX-APIKEY': str(self.API_KEY)})
 *         return session             # <<<<<<<<<<<<<<
 * 
 *     def _create_api_uri(self, path, signed=True, version=PUBLIC_API_VERSION):
*/
  __Pyx_XDECREF(__pyx_r);
  __Pyx_INCREF(__pyx_v_session);
  __pyx_r = __pyx_v_session;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":411
 *             logger.critical(f"An exception occurred: {exc_type} - {exc_value} - {error_traceback}")
 * 
 *     def _init_session(self):             # <<<<<<<<<<<<<<
 *         session = requests.session()
 *         session.headers.update({'Accept': 'application/json',
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager._init_session", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_session);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":418
 *         return session
 * 
 *     def _create_api_uri(self, path, signed=True, version=PUBLIC_API_VERSION):             # <<<<<<<<<<<<<<
 *         v = self.PRIVATE_API_VERSION if signed else version
 *         return self.API_URL + '/' + v + '/' + path
*/

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager___defaults__(CYTHON_UNUSED PyObject *__pyx_self) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("__defaults__", 0);
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 418, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_INCREF(((PyObject*)Py_True));
  __Pyx_GIVEREF(((PyObject*)Py_True));
  if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject*)Py_True)) != (0)) __PYX_ERR(0, 418, __pyx_L1_error);
  __Pyx_INCREF(__Pyx_CyFunction_Defaults(struct __pyx_defaults, __pyx_self)->arg0);
  __Pyx_GIVEREF(__Pyx_CyFunction_Defaults(struct __pyx_defaults, __pyx_self)->arg0);
  if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 1, __Pyx_CyFunction_Defaults(struct __pyx_defaults, __pyx_self)->arg0) != (0)) __PYX_ERR(0, 418, __pyx_L1_error);
  __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 418, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_GIVEREF(__pyx_t_1);
  if (__Pyx_PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_1) != (0)) __PYX_ERR(0, 418, __pyx_L1_error);
  __Pyx_INCREF(Py_None);
  __Pyx_GIVEREF(Py_None);
  if (__Pyx_PyTuple_SET_ITEM(__pyx_t_2, 1, Py_None) != (0)) __PYX_ERR(0, 418, __pyx_L1_error);
  __pyx_t_1 = 0;
  __pyx_r = __pyx_t_2;
  __pyx_t_2 = 0;
  goto __pyx_L0;

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.__defaults__", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_9_create_api_uri(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_9_create_api_uri = {"_create_api_uri", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_9_create_api_uri, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_9_create_api_uri(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_path = 0;
  PyObject *__pyx_v_signed = 0;
  PyObject *__pyx_v_version = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[4] = {0,0,0,0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("_create_api_uri (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,&__pyx_mstate_global->__pyx_n_u_path,&__pyx_mstate_global->__pyx_n_u_signed,&__pyx_mstate_global->__pyx_n_u_version_2,0};
    struct __pyx_defaults *__pyx_dynamic_args = __Pyx_CyFunction_Defaults(struct __pyx_defaults, __pyx_self);
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 418, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  4:
        values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 418, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  3:
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 418, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 418, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 418, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "_create_api_uri", 0) < 0) __PYX_ERR(0, 418, __pyx_L3_error)
      if (!values[2]) values[2] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_True)));
      if (!values[3]) values[3] = __Pyx_NewRef(__pyx_dynamic_args->arg0);
      for (Py_ssize_t i = __pyx_nargs; i < 2; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("_create_api_uri", 0, 2, 4, i); __PYX_ERR(0, 418, __pyx_L3_error) }
      }
    } else {
      switch (__pyx_nargs) {
        case  4:
        values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 418, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  3:
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 418, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 418, __pyx_L3_error)
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 418, __pyx_L3_error)
        break;
        default: goto __pyx_L5_argtuple_error;
      }
      if (!values[2]) values[2] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_True)));
      if (!values[3]) values[3] = __Pyx_NewRef(__pyx_dynamic_args->arg0);
    }
    __pyx_v_self = values[0];
    __pyx_v_path = values[1];
    __pyx_v_signed = values[2];
    __pyx_v_version = values[3];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("_create_api_uri", 0, 2, 4, __pyx_nargs); __PYX_ERR(0, 418, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager._create_api_uri", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_8_create_api_uri(__pyx_self, __pyx_v_self, __pyx_v_path, __pyx_v_signed, __pyx_v_version);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_8_create_api_uri(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_path, PyObject *__pyx_v_signed, PyObject *__pyx_v_version) {
  PyObject *__pyx_v_v = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("_create_api_uri", 0);

  /* "unicorn_binance_rest_api/manager.py":419
 * 
 *     def _create_api_uri(self, path, signed=True, version=PUBLIC_API_VERSION):
 *         v = self.PRIVATE_API_VERSION if signed else version             # <<<<<<<<<<<<<<
 *         return self.API_URL + '/' + v + '/' + path
 * 
*/
  __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_signed); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(0, 419, __pyx_L1_error)
  if (__pyx_t_2) {
    __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_PRIVATE_API_VERSION); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 419, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_1 = __pyx_t_3;
    __pyx_t_3 = 0;
  } else {
    __Pyx_INCREF(__pyx_v_version);
    __pyx_t_1 = __pyx_v_version;
  }
  __pyx_v_v = __pyx_t_1;
  __pyx_t_1 = 0;

  /* "unicorn_binance_rest_api/manager.py":420
 *     def _create_api_uri(self, path, signed=True, version=PUBLIC_API_VERSION):
 *         v = self.PRIVATE_API_VERSION if signed else version
 *         return self.API_URL + '/' + v + '/' + path             # <<<<<<<<<<<<<<
 * 
 *     def _create_margin_api_uri(self, path, version=MARGIN_API_VERSION):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_API_URL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 420, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_3 = PyNumber_Add(__pyx_t_1, __pyx_mstate_global->__pyx_kp_u__7); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 420, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_t_1 = PyNumber_Add(__pyx_t_3, __pyx_v_v); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 420, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  __pyx_t_3 = PyNumber_Add(__pyx_t_1, __pyx_mstate_global->__pyx_kp_u__7); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 420, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_t_1 = PyNumber_Add(__pyx_t_3, __pyx_v_path); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 420, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":418
 *         return session
 * 
 *     def _create_api_uri(self, path, signed=True, version=PUBLIC_API_VERSION):             # <<<<<<<<<<<<<<
 *         v = self.PRIVATE_API_VERSION if signed else version
 *         return self.API_URL + '/' + v + '/' + path
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager._create_api_uri", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_v);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":422
 *         return self.API_URL + '/' + v + '/' + path
 * 
 *     def _create_margin_api_uri(self, path, version=MARGIN_API_VERSION):             # <<<<<<<<<<<<<<
 *         return self.MARGIN_API_URL + '/' + version + '/' + path
 * 
*/

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_2__defaults__(CYTHON_UNUSED PyObject *__pyx_self) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("__defaults__", 0);
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 422, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_INCREF(__Pyx_CyFunction_Defaults(struct __pyx_defaults, __pyx_self)->arg0);
  __Pyx_GIVEREF(__Pyx_CyFunction_Defaults(struct __pyx_defaults, __pyx_self)->arg0);
  if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, __Pyx_CyFunction_Defaults(struct __pyx_defaults, __pyx_self)->arg0) != (0)) __PYX_ERR(0, 422, __pyx_L1_error);
  __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 422, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_GIVEREF(__pyx_t_1);
  if (__Pyx_PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_1) != (0)) __PYX_ERR(0, 422, __pyx_L1_error);
  __Pyx_INCREF(Py_None);
  __Pyx_GIVEREF(Py_None);
  if (__Pyx_PyTuple_SET_ITEM(__pyx_t_2, 1, Py_None) != (0)) __PYX_ERR(0, 422, __pyx_L1_error);
  __pyx_t_1 = 0;
  __pyx_r = __pyx_t_2;
  __pyx_t_2 = 0;
  goto __pyx_L0;

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.__defaults__", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_11_create_margin_api_uri(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_11_create_margin_api_uri = {"_create_margin_api_uri", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_11_create_margin_api_uri, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_11_create_margin_api_uri(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_path = 0;
  PyObject *__pyx_v_version = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[3] = {0,0,0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("_create_margin_api_uri (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,&__pyx_mstate_global->__pyx_n_u_path,&__pyx_mstate_global->__pyx_n_u_version_2,0};
    struct __pyx_defaults *__pyx_dynamic_args = __Pyx_CyFunction_Defaults(struct __pyx_defaults, __pyx_self);
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 422, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  3:
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 422, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 422, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 422, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "_create_margin_api_uri", 0) < 0) __PYX_ERR(0, 422, __pyx_L3_error)
      if (!values[2]) values[2] = __Pyx_NewRef(__pyx_dynamic_args->arg0);
      for (Py_ssize_t i = __pyx_nargs; i < 2; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("_create_margin_api_uri", 0, 2, 3, i); __PYX_ERR(0, 422, __pyx_L3_error) }
      }
    } else {
      switch (__pyx_nargs) {
        case  3:
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 422, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 422, __pyx_L3_error)
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 422, __pyx_L3_error)
        break;
        default: goto __pyx_L5_argtuple_error;
      }
      if (!values[2]) values[2] = __Pyx_NewRef(__pyx_dynamic_args->arg0);
    }
    __pyx_v_self = values[0];
    __pyx_v_path = values[1];
    __pyx_v_version = values[2];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("_create_margin_api_uri", 0, 2, 3, __pyx_nargs); __PYX_ERR(0, 422, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager._create_margin_api_uri", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_10_create_margin_api_uri(__pyx_self, __pyx_v_self, __pyx_v_path, __pyx_v_version);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_10_create_margin_api_uri(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_path, PyObject *__pyx_v_version) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("_create_margin_api_uri", 0);

  /* "unicorn_binance_rest_api/manager.py":423
 * 
 *     def _create_margin_api_uri(self, path, version=MARGIN_API_VERSION):
 *         return self.MARGIN_API_URL + '/' + version + '/' + path             # <<<<<<<<<<<<<<
 * 
 *     def _create_website_uri(self, path):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_MARGIN_API_URL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 423, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = PyNumber_Add(__pyx_t_1, __pyx_mstate_global->__pyx_kp_u__7); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 423, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_t_1 = PyNumber_Add(__pyx_t_2, __pyx_v_version); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 423, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_t_2 = PyNumber_Add(__pyx_t_1, __pyx_mstate_global->__pyx_kp_u__7); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 423, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_t_1 = PyNumber_Add(__pyx_t_2, __pyx_v_path); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 423, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":422
 *         return self.API_URL + '/' + v + '/' + path
 * 
 *     def _create_margin_api_uri(self, path, version=MARGIN_API_VERSION):             # <<<<<<<<<<<<<<
 *         return self.MARGIN_API_URL + '/' + version + '/' + path
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager._create_margin_api_uri", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":425
 *         return self.MARGIN_API_URL + '/' + version + '/' + path
 * 
 *     def _create_website_uri(self, path):             # <<<<<<<<<<<<<<
 *         return self.WEBSITE_URL + '/' + path
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_13_create_website_uri(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_13_create_website_uri = {"_create_website_uri", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_13_create_website_uri, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_13_create_website_uri(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_path = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[2] = {0,0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("_create_website_uri (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,&__pyx_mstate_global->__pyx_n_u_path,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 425, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 425, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 425, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "_create_website_uri", 0) < 0) __PYX_ERR(0, 425, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 2; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("_create_website_uri", 1, 2, 2, i); __PYX_ERR(0, 425, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 2)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 425, __pyx_L3_error)
      values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 425, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
    __pyx_v_path = values[1];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("_create_website_uri", 1, 2, 2, __pyx_nargs); __PYX_ERR(0, 425, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager._create_website_uri", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_12_create_website_uri(__pyx_self, __pyx_v_self, __pyx_v_path);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_12_create_website_uri(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_path) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("_create_website_uri", 0);

  /* "unicorn_binance_rest_api/manager.py":426
 * 
 *     def _create_website_uri(self, path):
 *         return self.WEBSITE_URL + '/' + path             # <<<<<<<<<<<<<<
 * 
 *     def _create_futures_api_uri(self, path: str, version: int = 1) -> str:
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_WEBSITE_URL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 426, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = PyNumber_Add(__pyx_t_1, __pyx_mstate_global->__pyx_kp_u__7); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 426, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_t_1 = PyNumber_Add(__pyx_t_2, __pyx_v_path); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 426, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":425
 *         return self.MARGIN_API_URL + '/' + version + '/' + path
 * 
 *     def _create_website_uri(self, path):             # <<<<<<<<<<<<<<
 *         return self.WEBSITE_URL + '/' + path
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager._create_website_uri", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":428
 *         return self.WEBSITE_URL + '/' + path
 * 
 *     def _create_futures_api_uri(self, path: str, version: int = 1) -> str:             # <<<<<<<<<<<<<<
 *         url = self.FUTURES_URL
 *         options = {1: self.FUTURES_API_VERSION, 2: self.FUTURES_API_VERSION2}
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_15_create_futures_api_uri(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_15_create_futures_api_uri = {"_create_futures_api_uri", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_15_create_futures_api_uri, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_15_create_futures_api_uri(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_path = 0;
  PyObject *__pyx_v_version = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[3] = {0,0,0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("_create_futures_api_uri (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,&__pyx_mstate_global->__pyx_n_u_path,&__pyx_mstate_global->__pyx_n_u_version_2,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 428, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  3:
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 428, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 428, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 428, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "_create_futures_api_uri", 0) < 0) __PYX_ERR(0, 428, __pyx_L3_error)
      if (!values[2]) values[2] = __Pyx_NewRef(((PyObject*)((PyObject*)__pyx_mstate_global->__pyx_int_1)));
      for (Py_ssize_t i = __pyx_nargs; i < 2; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("_create_futures_api_uri", 0, 2, 3, i); __PYX_ERR(0, 428, __pyx_L3_error) }
      }
    } else {
      switch (__pyx_nargs) {
        case  3:
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 428, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 428, __pyx_L3_error)
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 428, __pyx_L3_error)
        break;
        default: goto __pyx_L5_argtuple_error;
      }
      if (!values[2]) values[2] = __Pyx_NewRef(((PyObject*)((PyObject*)__pyx_mstate_global->__pyx_int_1)));
    }
    __pyx_v_self = values[0];
    __pyx_v_path = ((PyObject*)values[1]);
    __pyx_v_version = ((PyObject*)values[2]);
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("_create_futures_api_uri", 0, 2, 3, __pyx_nargs); __PYX_ERR(0, 428, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager._create_futures_api_uri", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_path), (&PyUnicode_Type), 0, "path", 2))) __PYX_ERR(0, 428, __pyx_L1_error)
  if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_version), (&PyLong_Type), 0, "version", 2))) __PYX_ERR(0, 428, __pyx_L1_error)
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_14_create_futures_api_uri(__pyx_self, __pyx_v_self, __pyx_v_path, __pyx_v_version);

  /* function exit code */
  goto __pyx_L0;
  __pyx_L1_error:;
  __pyx_r = NULL;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  goto __pyx_L7_cleaned_up;
  __pyx_L0:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __pyx_L7_cleaned_up:;
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_14_create_futures_api_uri(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_path, PyObject *__pyx_v_version) {
  PyObject *__pyx_v_url = NULL;
  PyObject *__pyx_v_options = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("_create_futures_api_uri", 0);

  /* "unicorn_binance_rest_api/manager.py":429
 * 
 *     def _create_futures_api_uri(self, path: str, version: int = 1) -> str:
 *         url = self.FUTURES_URL             # <<<<<<<<<<<<<<
 *         options = {1: self.FUTURES_API_VERSION, 2: self.FUTURES_API_VERSION2}
 *         return url + '/' + options[version] + '/' + path
*/
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_FUTURES_URL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 429, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_v_url = __pyx_t_1;
  __pyx_t_1 = 0;

  /* "unicorn_binance_rest_api/manager.py":430
 *     def _create_futures_api_uri(self, path: str, version: int = 1) -> str:
 *         url = self.FUTURES_URL
 *         options = {1: self.FUTURES_API_VERSION, 2: self.FUTURES_API_VERSION2}             # <<<<<<<<<<<<<<
 *         return url + '/' + options[version] + '/' + path
 * 
*/
  __pyx_t_1 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 430, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_FUTURES_API_VERSION); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 430, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_mstate_global->__pyx_int_1, __pyx_t_2) < 0) __PYX_ERR(0, 430, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_FUTURES_API_VERSION2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 430, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_mstate_global->__pyx_int_2, __pyx_t_2) < 0) __PYX_ERR(0, 430, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_v_options = ((PyObject*)__pyx_t_1);
  __pyx_t_1 = 0;

  /* "unicorn_binance_rest_api/manager.py":431
 *         url = self.FUTURES_URL
 *         options = {1: self.FUTURES_API_VERSION, 2: self.FUTURES_API_VERSION2}
 *         return url + '/' + options[version] + '/' + path             # <<<<<<<<<<<<<<
 * 
 *     def _create_futures_data_api_uri(self, path):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = PyNumber_Add(__pyx_v_url, __pyx_mstate_global->__pyx_kp_u__7); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 431, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_GetItem(__pyx_v_options, __pyx_v_version); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 431, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __pyx_t_3 = PyNumber_Add(__pyx_t_1, __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 431, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_t_2 = PyNumber_Add(__pyx_t_3, __pyx_mstate_global->__pyx_kp_u__7); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 431, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  __pyx_t_3 = PyNumber_Add(__pyx_t_2, __pyx_v_path); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 431, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  if (!(likely(PyUnicode_CheckExact(__pyx_t_3))||((__pyx_t_3) == Py_None) || __Pyx_RaiseUnexpectedTypeError("str", __pyx_t_3))) __PYX_ERR(0, 431, __pyx_L1_error)
  __pyx_r = ((PyObject*)__pyx_t_3);
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":428
 *         return self.WEBSITE_URL + '/' + path
 * 
 *     def _create_futures_api_uri(self, path: str, version: int = 1) -> str:             # <<<<<<<<<<<<<<
 *         url = self.FUTURES_URL
 *         options = {1: self.FUTURES_API_VERSION, 2: self.FUTURES_API_VERSION2}
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager._create_futures_api_uri", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_url);
  __Pyx_XDECREF(__pyx_v_options);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":433
 *         return url + '/' + options[version] + '/' + path
 * 
 *     def _create_futures_data_api_uri(self, path):             # <<<<<<<<<<<<<<
 *         return self.FUTURES_DATA_URL + '/' + path
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_17_create_futures_data_api_uri(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_17_create_futures_data_api_uri = {"_create_futures_data_api_uri", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_17_create_futures_data_api_uri, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_17_create_futures_data_api_uri(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_path = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[2] = {0,0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("_create_futures_data_api_uri (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,&__pyx_mstate_global->__pyx_n_u_path,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 433, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 433, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 433, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "_create_futures_data_api_uri", 0) < 0) __PYX_ERR(0, 433, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 2; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("_create_futures_data_api_uri", 1, 2, 2, i); __PYX_ERR(0, 433, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 2)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 433, __pyx_L3_error)
      values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 433, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
    __pyx_v_path = values[1];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("_create_futures_data_api_uri", 1, 2, 2, __pyx_nargs); __PYX_ERR(0, 433, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager._create_futures_data_api_uri", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_16_create_futures_data_api_uri(__pyx_self, __pyx_v_self, __pyx_v_path);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_16_create_futures_data_api_uri(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_path) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("_create_futures_data_api_uri", 0);

  /* "unicorn_binance_rest_api/manager.py":434
 * 
 *     def _create_futures_data_api_uri(self, path):
 *         return self.FUTURES_DATA_URL + '/' + path             # <<<<<<<<<<<<<<
 * 
 *     def _create_futures_coin_api_url(self, path: str, version: int = 1) -> str:
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_FUTURES_DATA_URL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 434, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = PyNumber_Add(__pyx_t_1, __pyx_mstate_global->__pyx_kp_u__7); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 434, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_t_1 = PyNumber_Add(__pyx_t_2, __pyx_v_path); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 434, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":433
 *         return url + '/' + options[version] + '/' + path
 * 
 *     def _create_futures_data_api_uri(self, path):             # <<<<<<<<<<<<<<
 *         return self.FUTURES_DATA_URL + '/' + path
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager._create_futures_data_api_uri", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":436
 *         return self.FUTURES_DATA_URL + '/' + path
 * 
 *     def _create_futures_coin_api_url(self, path: str, version: int = 1) -> str:             # <<<<<<<<<<<<<<
 *         options = {1: self.FUTURES_API_VERSION, 2: self.FUTURES_API_VERSION2}
 *         return self.FUTURES_COIN_URL + "/" + options[version] + "/" + path
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_19_create_futures_coin_api_url(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_19_create_futures_coin_api_url = {"_create_futures_coin_api_url", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_19_create_futures_coin_api_url, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_19_create_futures_coin_api_url(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_path = 0;
  PyObject *__pyx_v_version = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[3] = {0,0,0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("_create_futures_coin_api_url (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,&__pyx_mstate_global->__pyx_n_u_path,&__pyx_mstate_global->__pyx_n_u_version_2,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 436, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  3:
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 436, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 436, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 436, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "_create_futures_coin_api_url", 0) < 0) __PYX_ERR(0, 436, __pyx_L3_error)
      if (!values[2]) values[2] = __Pyx_NewRef(((PyObject*)((PyObject*)__pyx_mstate_global->__pyx_int_1)));
      for (Py_ssize_t i = __pyx_nargs; i < 2; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("_create_futures_coin_api_url", 0, 2, 3, i); __PYX_ERR(0, 436, __pyx_L3_error) }
      }
    } else {
      switch (__pyx_nargs) {
        case  3:
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 436, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 436, __pyx_L3_error)
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 436, __pyx_L3_error)
        break;
        default: goto __pyx_L5_argtuple_error;
      }
      if (!values[2]) values[2] = __Pyx_NewRef(((PyObject*)((PyObject*)__pyx_mstate_global->__pyx_int_1)));
    }
    __pyx_v_self = values[0];
    __pyx_v_path = ((PyObject*)values[1]);
    __pyx_v_version = ((PyObject*)values[2]);
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("_create_futures_coin_api_url", 0, 2, 3, __pyx_nargs); __PYX_ERR(0, 436, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager._create_futures_coin_api_url", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_path), (&PyUnicode_Type), 0, "path", 2))) __PYX_ERR(0, 436, __pyx_L1_error)
  if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_version), (&PyLong_Type), 0, "version", 2))) __PYX_ERR(0, 436, __pyx_L1_error)
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_18_create_futures_coin_api_url(__pyx_self, __pyx_v_self, __pyx_v_path, __pyx_v_version);

  /* function exit code */
  goto __pyx_L0;
  __pyx_L1_error:;
  __pyx_r = NULL;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  goto __pyx_L7_cleaned_up;
  __pyx_L0:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __pyx_L7_cleaned_up:;
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_18_create_futures_coin_api_url(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_path, PyObject *__pyx_v_version) {
  PyObject *__pyx_v_options = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("_create_futures_coin_api_url", 0);

  /* "unicorn_binance_rest_api/manager.py":437
 * 
 *     def _create_futures_coin_api_url(self, path: str, version: int = 1) -> str:
 *         options = {1: self.FUTURES_API_VERSION, 2: self.FUTURES_API_VERSION2}             # <<<<<<<<<<<<<<
 *         return self.FUTURES_COIN_URL + "/" + options[version] + "/" + path
 * 
*/
  __pyx_t_1 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 437, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_FUTURES_API_VERSION); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 437, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_mstate_global->__pyx_int_1, __pyx_t_2) < 0) __PYX_ERR(0, 437, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_FUTURES_API_VERSION2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 437, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_mstate_global->__pyx_int_2, __pyx_t_2) < 0) __PYX_ERR(0, 437, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_v_options = ((PyObject*)__pyx_t_1);
  __pyx_t_1 = 0;

  /* "unicorn_binance_rest_api/manager.py":438
 *     def _create_futures_coin_api_url(self, path: str, version: int = 1) -> str:
 *         options = {1: self.FUTURES_API_VERSION, 2: self.FUTURES_API_VERSION2}
 *         return self.FUTURES_COIN_URL + "/" + options[version] + "/" + path             # <<<<<<<<<<<<<<
 * 
 *     def _create_futures_coin_data_api_url(self, path: str, version: int = 1) -> str:
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_FUTURES_COIN_URL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 438, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = PyNumber_Add(__pyx_t_1, __pyx_mstate_global->__pyx_kp_u__7); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 438, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_t_1 = __Pyx_PyDict_GetItem(__pyx_v_options, __pyx_v_version); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 438, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_3 = PyNumber_Add(__pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 438, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_t_1 = PyNumber_Add(__pyx_t_3, __pyx_mstate_global->__pyx_kp_u__7); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 438, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  __pyx_t_3 = PyNumber_Add(__pyx_t_1, __pyx_v_path); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 438, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  if (!(likely(PyUnicode_CheckExact(__pyx_t_3))||((__pyx_t_3) == Py_None) || __Pyx_RaiseUnexpectedTypeError("str", __pyx_t_3))) __PYX_ERR(0, 438, __pyx_L1_error)
  __pyx_r = ((PyObject*)__pyx_t_3);
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":436
 *         return self.FUTURES_DATA_URL + '/' + path
 * 
 *     def _create_futures_coin_api_url(self, path: str, version: int = 1) -> str:             # <<<<<<<<<<<<<<
 *         options = {1: self.FUTURES_API_VERSION, 2: self.FUTURES_API_VERSION2}
 *         return self.FUTURES_COIN_URL + "/" + options[version] + "/" + path
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager._create_futures_coin_api_url", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_options);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":440
 *         return self.FUTURES_COIN_URL + "/" + options[version] + "/" + path
 * 
 *     def _create_futures_coin_data_api_url(self, path: str, version: int = 1) -> str:             # <<<<<<<<<<<<<<
 *         url = self.FUTURES_COIN_DATA_URL
 *         options = {1: self.FUTURES_API_VERSION, 2: self.FUTURES_API_VERSION2}
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_21_create_futures_coin_data_api_url(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_21_create_futures_coin_data_api_url = {"_create_futures_coin_data_api_url", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_21_create_futures_coin_data_api_url, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_21_create_futures_coin_data_api_url(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_path = 0;
  PyObject *__pyx_v_version = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[3] = {0,0,0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("_create_futures_coin_data_api_url (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,&__pyx_mstate_global->__pyx_n_u_path,&__pyx_mstate_global->__pyx_n_u_version_2,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 440, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  3:
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 440, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 440, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 440, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "_create_futures_coin_data_api_url", 0) < 0) __PYX_ERR(0, 440, __pyx_L3_error)
      if (!values[2]) values[2] = __Pyx_NewRef(((PyObject*)((PyObject*)__pyx_mstate_global->__pyx_int_1)));
      for (Py_ssize_t i = __pyx_nargs; i < 2; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("_create_futures_coin_data_api_url", 0, 2, 3, i); __PYX_ERR(0, 440, __pyx_L3_error) }
      }
    } else {
      switch (__pyx_nargs) {
        case  3:
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 440, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 440, __pyx_L3_error)
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 440, __pyx_L3_error)
        break;
        default: goto __pyx_L5_argtuple_error;
      }
      if (!values[2]) values[2] = __Pyx_NewRef(((PyObject*)((PyObject*)__pyx_mstate_global->__pyx_int_1)));
    }
    __pyx_v_self = values[0];
    __pyx_v_path = ((PyObject*)values[1]);
    __pyx_v_version = ((PyObject*)values[2]);
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("_create_futures_coin_data_api_url", 0, 2, 3, __pyx_nargs); __PYX_ERR(0, 440, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager._create_futures_coin_data_api_url", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_path), (&PyUnicode_Type), 0, "path", 2))) __PYX_ERR(0, 440, __pyx_L1_error)
  if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_version), (&PyLong_Type), 0, "version", 2))) __PYX_ERR(0, 440, __pyx_L1_error)
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_20_create_futures_coin_data_api_url(__pyx_self, __pyx_v_self, __pyx_v_path, __pyx_v_version);

  /* function exit code */
  goto __pyx_L0;
  __pyx_L1_error:;
  __pyx_r = NULL;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  goto __pyx_L7_cleaned_up;
  __pyx_L0:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __pyx_L7_cleaned_up:;
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_20_create_futures_coin_data_api_url(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_path, PyObject *__pyx_v_version) {
  PyObject *__pyx_v_url = NULL;
  PyObject *__pyx_v_options = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("_create_futures_coin_data_api_url", 0);

  /* "unicorn_binance_rest_api/manager.py":441
 * 
 *     def _create_futures_coin_data_api_url(self, path: str, version: int = 1) -> str:
 *         url = self.FUTURES_COIN_DATA_URL             # <<<<<<<<<<<<<<
 *         options = {1: self.FUTURES_API_VERSION, 2: self.FUTURES_API_VERSION2}
 *         return url + "/" + options[version] + "/" + path
*/
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_FUTURES_COIN_DATA_URL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 441, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_v_url = __pyx_t_1;
  __pyx_t_1 = 0;

  /* "unicorn_binance_rest_api/manager.py":442
 *     def _create_futures_coin_data_api_url(self, path: str, version: int = 1) -> str:
 *         url = self.FUTURES_COIN_DATA_URL
 *         options = {1: self.FUTURES_API_VERSION, 2: self.FUTURES_API_VERSION2}             # <<<<<<<<<<<<<<
 *         return url + "/" + options[version] + "/" + path
 * 
*/
  __pyx_t_1 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 442, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_FUTURES_API_VERSION); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 442, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_mstate_global->__pyx_int_1, __pyx_t_2) < 0) __PYX_ERR(0, 442, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_FUTURES_API_VERSION2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 442, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_mstate_global->__pyx_int_2, __pyx_t_2) < 0) __PYX_ERR(0, 442, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_v_options = ((PyObject*)__pyx_t_1);
  __pyx_t_1 = 0;

  /* "unicorn_binance_rest_api/manager.py":443
 *         url = self.FUTURES_COIN_DATA_URL
 *         options = {1: self.FUTURES_API_VERSION, 2: self.FUTURES_API_VERSION2}
 *         return url + "/" + options[version] + "/" + path             # <<<<<<<<<<<<<<
 * 
 *     def _generate_signature(self, data):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = PyNumber_Add(__pyx_v_url, __pyx_mstate_global->__pyx_kp_u__7); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 443, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_GetItem(__pyx_v_options, __pyx_v_version); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 443, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __pyx_t_3 = PyNumber_Add(__pyx_t_1, __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 443, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_t_2 = PyNumber_Add(__pyx_t_3, __pyx_mstate_global->__pyx_kp_u__7); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 443, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  __pyx_t_3 = PyNumber_Add(__pyx_t_2, __pyx_v_path); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 443, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  if (!(likely(PyUnicode_CheckExact(__pyx_t_3))||((__pyx_t_3) == Py_None) || __Pyx_RaiseUnexpectedTypeError("str", __pyx_t_3))) __PYX_ERR(0, 443, __pyx_L1_error)
  __pyx_r = ((PyObject*)__pyx_t_3);
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":440
 *         return self.FUTURES_COIN_URL + "/" + options[version] + "/" + path
 * 
 *     def _create_futures_coin_data_api_url(self, path: str, version: int = 1) -> str:             # <<<<<<<<<<<<<<
 *         url = self.FUTURES_COIN_DATA_URL
 *         options = {1: self.FUTURES_API_VERSION, 2: self.FUTURES_API_VERSION2}
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager._create_futures_coin_data_api_url", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_url);
  __Pyx_XDECREF(__pyx_v_options);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":445
 *         return url + "/" + options[version] + "/" + path
 * 
 *     def _generate_signature(self, data):             # <<<<<<<<<<<<<<
 *         ordered_data = self._order_params(data)
 *         query_string = '&'.join(["{}={}".format(d[0], d[1]) for d in ordered_data])
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_23_generate_signature(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_23_generate_signature = {"_generate_signature", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_23_generate_signature, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_23_generate_signature(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_data = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[2] = {0,0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("_generate_signature (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,&__pyx_mstate_global->__pyx_n_u_data,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 445, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 445, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 445, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "_generate_signature", 0) < 0) __PYX_ERR(0, 445, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 2; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("_generate_signature", 1, 2, 2, i); __PYX_ERR(0, 445, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 2)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 445, __pyx_L3_error)
      values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 445, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
    __pyx_v_data = values[1];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("_generate_signature", 1, 2, 2, __pyx_nargs); __PYX_ERR(0, 445, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager._generate_signature", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_22_generate_signature(__pyx_self, __pyx_v_self, __pyx_v_data);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_22_generate_signature(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_data) {
  PyObject *__pyx_v_ordered_data = NULL;
  PyObject *__pyx_v_query_string = NULL;
  PyObject *__pyx_v_m = NULL;
  PyObject *__pyx_7genexpr__pyx_v_d = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  size_t __pyx_t_3;
  Py_ssize_t __pyx_t_4;
  PyObject *(*__pyx_t_5)(PyObject *);
  PyObject *__pyx_t_6 = NULL;
  PyObject *__pyx_t_7 = NULL;
  PyObject *__pyx_t_8 = NULL;
  PyObject *__pyx_t_9 = NULL;
  PyObject *__pyx_t_10 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("_generate_signature", 0);

  /* "unicorn_binance_rest_api/manager.py":446
 * 
 *     def _generate_signature(self, data):
 *         ordered_data = self._order_params(data)             # <<<<<<<<<<<<<<
 *         query_string = '&'.join(["{}={}".format(d[0], d[1]) for d in ordered_data])
 *         m = hmac.new(self.API_SECRET.encode('utf-8'), query_string.encode('utf-8'), hashlib.sha256)
*/
  __pyx_t_2 = __pyx_v_self;
  __Pyx_INCREF(__pyx_t_2);
  __pyx_t_3 = 0;
  {
    PyObject *__pyx_callargs[2] = {__pyx_t_2, __pyx_v_data};
    __pyx_t_1 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_order_params, __pyx_callargs+__pyx_t_3, (2-__pyx_t_3) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 446, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
  }
  __pyx_v_ordered_data = __pyx_t_1;
  __pyx_t_1 = 0;

  /* "unicorn_binance_rest_api/manager.py":447
 *     def _generate_signature(self, data):
 *         ordered_data = self._order_params(data)
 *         query_string = '&'.join(["{}={}".format(d[0], d[1]) for d in ordered_data])             # <<<<<<<<<<<<<<
 *         m = hmac.new(self.API_SECRET.encode('utf-8'), query_string.encode('utf-8'), hashlib.sha256)
 *         return m.hexdigest()
*/
  { /* enter inner scope */
    __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 447, __pyx_L5_error)
    __Pyx_GOTREF(__pyx_t_1);
    if (likely(PyList_CheckExact(__pyx_v_ordered_data)) || PyTuple_CheckExact(__pyx_v_ordered_data)) {
      __pyx_t_2 = __pyx_v_ordered_data; __Pyx_INCREF(__pyx_t_2);
      __pyx_t_4 = 0;
      __pyx_t_5 = NULL;
    } else {
      __pyx_t_4 = -1; __pyx_t_2 = PyObject_GetIter(__pyx_v_ordered_data); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 447, __pyx_L5_error)
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_5 = (CYTHON_COMPILING_IN_LIMITED_API) ? PyIter_Next : __Pyx_PyObject_GetIterNextFunc(__pyx_t_2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 447, __pyx_L5_error)
    }
    for (;;) {
      if (likely(!__pyx_t_5)) {
        if (likely(PyList_CheckExact(__pyx_t_2))) {
          {
            Py_ssize_t __pyx_temp = __Pyx_PyList_GET_SIZE(__pyx_t_2);
            #if !CYTHON_ASSUME_SAFE_SIZE
            if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 447, __pyx_L5_error)
            #endif
            if (__pyx_t_4 >= __pyx_temp) break;
          }
          __pyx_t_6 = __Pyx_PyList_GetItemRef(__pyx_t_2, __pyx_t_4);
          ++__pyx_t_4;
        } else {
          {
            Py_ssize_t __pyx_temp = __Pyx_PyTuple_GET_SIZE(__pyx_t_2);
            #if !CYTHON_ASSUME_SAFE_SIZE
            if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 447, __pyx_L5_error)
            #endif
            if (__pyx_t_4 >= __pyx_temp) break;
          }
          #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
          __pyx_t_6 = __Pyx_NewRef(PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_4));
          #else
          __pyx_t_6 = __Pyx_PySequence_ITEM(__pyx_t_2, __pyx_t_4);
          #endif
          ++__pyx_t_4;
        }
        if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 447, __pyx_L5_error)
      } else {
        __pyx_t_6 = __pyx_t_5(__pyx_t_2);
        if (unlikely(!__pyx_t_6)) {
          PyObject* exc_type = PyErr_Occurred();
          if (exc_type) {
            if (unlikely(!__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) __PYX_ERR(0, 447, __pyx_L5_error)
            PyErr_Clear();
          }
          break;
        }
      }
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_XDECREF_SET(__pyx_7genexpr__pyx_v_d, __pyx_t_6);
      __pyx_t_6 = 0;
      __pyx_t_7 = __pyx_mstate_global->__pyx_kp_u__9;
      __Pyx_INCREF(__pyx_t_7);
      __pyx_t_8 = __Pyx_GetItemInt(__pyx_7genexpr__pyx_v_d, 0, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 447, __pyx_L5_error)
      __Pyx_GOTREF(__pyx_t_8);
      __pyx_t_9 = __Pyx_GetItemInt(__pyx_7genexpr__pyx_v_d, 1, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 447, __pyx_L5_error)
      __Pyx_GOTREF(__pyx_t_9);
      __pyx_t_3 = 0;
      {
        PyObject *__pyx_callargs[3] = {__pyx_t_7, __pyx_t_8, __pyx_t_9};
        __pyx_t_6 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_format, __pyx_callargs+__pyx_t_3, (3-__pyx_t_3) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 447, __pyx_L5_error)
        __Pyx_GOTREF(__pyx_t_6);
      }
      if (unlikely(__Pyx_ListComp_Append(__pyx_t_1, (PyObject*)__pyx_t_6))) __PYX_ERR(0, 447, __pyx_L5_error)
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    }
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_XDECREF(__pyx_7genexpr__pyx_v_d); __pyx_7genexpr__pyx_v_d = 0;
    goto __pyx_L9_exit_scope;
    __pyx_L5_error:;
    __Pyx_XDECREF(__pyx_7genexpr__pyx_v_d); __pyx_7genexpr__pyx_v_d = 0;
    goto __pyx_L1_error;
    __pyx_L9_exit_scope:;
  } /* exit inner scope */
  __pyx_t_2 = PyUnicode_Join(__pyx_mstate_global->__pyx_kp_u__8, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 447, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_v_query_string = ((PyObject*)__pyx_t_2);
  __pyx_t_2 = 0;

  /* "unicorn_binance_rest_api/manager.py":448
 *         ordered_data = self._order_params(data)
 *         query_string = '&'.join(["{}={}".format(d[0], d[1]) for d in ordered_data])
 *         m = hmac.new(self.API_SECRET.encode('utf-8'), query_string.encode('utf-8'), hashlib.sha256)             # <<<<<<<<<<<<<<
 *         return m.hexdigest()
 * 
*/
  __pyx_t_1 = NULL;
  __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_mstate_global->__pyx_n_u_hmac); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 448, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_6);
  __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_mstate_global->__pyx_n_u_new); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 448, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_9);
  __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
  __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_API_SECRET); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 448, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_7);
  __pyx_t_8 = __pyx_t_7;
  __Pyx_INCREF(__pyx_t_8);
  __pyx_t_3 = 0;
  {
    PyObject *__pyx_callargs[2] = {__pyx_t_8, __pyx_mstate_global->__pyx_kp_u_utf_8};
    __pyx_t_6 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_encode, __pyx_callargs+__pyx_t_3, (2-__pyx_t_3) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
    __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
    __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
    if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 448, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_6);
  }
  if (unlikely(__pyx_v_query_string == Py_None)) {
    PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%.30s'", "encode");
    __PYX_ERR(0, 448, __pyx_L1_error)
  }
  __pyx_t_7 = PyUnicode_AsUTF8String(__pyx_v_query_string); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 448, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_7);
  __Pyx_GetModuleGlobalName(__pyx_t_8, __pyx_mstate_global->__pyx_n_u_hashlib); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 448, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_mstate_global->__pyx_n_u_sha256); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 448, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_10);
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
  __pyx_t_3 = 1;
  #if CYTHON_UNPACK_METHODS
  if (unlikely(PyMethod_Check(__pyx_t_9))) {
    __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_9);
    assert(__pyx_t_1);
    PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_9);
    __Pyx_INCREF(__pyx_t_1);
    __Pyx_INCREF(__pyx__function);
    __Pyx_DECREF_SET(__pyx_t_9, __pyx__function);
    __pyx_t_3 = 0;
  }
  #endif
  {
    PyObject *__pyx_callargs[4] = {__pyx_t_1, __pyx_t_6, __pyx_t_7, __pyx_t_10};
    __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_9, __pyx_callargs+__pyx_t_3, (4-__pyx_t_3) | (__pyx_t_3*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
    __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
    __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
    __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
    __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
    if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 448, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
  }
  __pyx_v_m = __pyx_t_2;
  __pyx_t_2 = 0;

  /* "unicorn_binance_rest_api/manager.py":449
 *         query_string = '&'.join(["{}={}".format(d[0], d[1]) for d in ordered_data])
 *         m = hmac.new(self.API_SECRET.encode('utf-8'), query_string.encode('utf-8'), hashlib.sha256)
 *         return m.hexdigest()             # <<<<<<<<<<<<<<
 * 
 *     @staticmethod
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_9 = __pyx_v_m;
  __Pyx_INCREF(__pyx_t_9);
  __pyx_t_3 = 0;
  {
    PyObject *__pyx_callargs[2] = {__pyx_t_9, NULL};
    __pyx_t_2 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_hexdigest, __pyx_callargs+__pyx_t_3, (1-__pyx_t_3) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
    __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
    if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 449, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
  }
  __pyx_r = __pyx_t_2;
  __pyx_t_2 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":445
 *         return url + "/" + options[version] + "/" + path
 * 
 *     def _generate_signature(self, data):             # <<<<<<<<<<<<<<
 *         ordered_data = self._order_params(data)
 *         query_string = '&'.join(["{}={}".format(d[0], d[1]) for d in ordered_data])
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_XDECREF(__pyx_t_8);
  __Pyx_XDECREF(__pyx_t_9);
  __Pyx_XDECREF(__pyx_t_10);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager._generate_signature", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_ordered_data);
  __Pyx_XDECREF(__pyx_v_query_string);
  __Pyx_XDECREF(__pyx_v_m);
  __Pyx_XDECREF(__pyx_7genexpr__pyx_v_d);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":451
 *         return m.hexdigest()
 * 
 *     @staticmethod             # <<<<<<<<<<<<<<
 *     def _order_params(data):
 *         """
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_25_order_params(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_24_order_params, "\n        Convert params to list with signature as last element\n\n        :param data:\n        :return:\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_25_order_params = {"_order_params", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_25_order_params, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_24_order_params};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_25_order_params(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_data = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("_order_params (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_data,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 451, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 451, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "_order_params", 0) < 0) __PYX_ERR(0, 451, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("_order_params", 1, 1, 1, i); __PYX_ERR(0, 451, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 451, __pyx_L3_error)
    }
    __pyx_v_data = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("_order_params", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 451, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager._order_params", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_24_order_params(__pyx_self, __pyx_v_data);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_24_order_params(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_data) {
  int __pyx_v_has_signature;
  PyObject *__pyx_v_params = NULL;
  PyObject *__pyx_v_key = NULL;
  PyObject *__pyx_v_value = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  Py_ssize_t __pyx_t_2;
  Py_ssize_t __pyx_t_3;
  int __pyx_t_4;
  PyObject *__pyx_t_5 = NULL;
  PyObject *__pyx_t_6 = NULL;
  int __pyx_t_7;
  int __pyx_t_8;
  int __pyx_t_9;
  PyObject *__pyx_t_10 = NULL;
  PyObject *__pyx_t_11 = NULL;
  size_t __pyx_t_12;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("_order_params", 0);

  /* "unicorn_binance_rest_api/manager.py":460
 * 
 *         """
 *         has_signature = False             # <<<<<<<<<<<<<<
 *         params = []
 *         for key, value in data.items():
*/
  __pyx_v_has_signature = 0;

  /* "unicorn_binance_rest_api/manager.py":461
 *         """
 *         has_signature = False
 *         params = []             # <<<<<<<<<<<<<<
 *         for key, value in data.items():
 *             if key == 'signature':
*/
  __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 461, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_v_params = ((PyObject*)__pyx_t_1);
  __pyx_t_1 = 0;

  /* "unicorn_binance_rest_api/manager.py":462
 *         has_signature = False
 *         params = []
 *         for key, value in data.items():             # <<<<<<<<<<<<<<
 *             if key == 'signature':
 *                 has_signature = True
*/
  __pyx_t_2 = 0;
  if (unlikely(__pyx_v_data == Py_None)) {
    PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%.30s'", "items");
    __PYX_ERR(0, 462, __pyx_L1_error)
  }
  __pyx_t_5 = __Pyx_dict_iterator(__pyx_v_data, 0, __pyx_mstate_global->__pyx_n_u_items, (&__pyx_t_3), (&__pyx_t_4)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 462, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_1);
  __pyx_t_1 = __pyx_t_5;
  __pyx_t_5 = 0;
  while (1) {
    __pyx_t_7 = __Pyx_dict_iter_next(__pyx_t_1, __pyx_t_3, &__pyx_t_2, &__pyx_t_5, &__pyx_t_6, NULL, __pyx_t_4);
    if (unlikely(__pyx_t_7 == 0)) break;
    if (unlikely(__pyx_t_7 == -1)) __PYX_ERR(0, 462, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __Pyx_GOTREF(__pyx_t_6);
    __Pyx_XDECREF_SET(__pyx_v_key, __pyx_t_5);
    __pyx_t_5 = 0;
    __Pyx_XDECREF_SET(__pyx_v_value, __pyx_t_6);
    __pyx_t_6 = 0;

    /* "unicorn_binance_rest_api/manager.py":463
 *         params = []
 *         for key, value in data.items():
 *             if key == 'signature':             # <<<<<<<<<<<<<<
 *                 has_signature = True
 *             else:
*/
    __pyx_t_8 = (__Pyx_PyUnicode_Equals(__pyx_v_key, __pyx_mstate_global->__pyx_n_u_signature, Py_EQ)); if (unlikely((__pyx_t_8 < 0))) __PYX_ERR(0, 463, __pyx_L1_error)
    if (__pyx_t_8) {

      /* "unicorn_binance_rest_api/manager.py":464
 *         for key, value in data.items():
 *             if key == 'signature':
 *                 has_signature = True             # <<<<<<<<<<<<<<
 *             else:
 *                 params.append((key, value))
*/
      __pyx_v_has_signature = 1;

      /* "unicorn_binance_rest_api/manager.py":463
 *         params = []
 *         for key, value in data.items():
 *             if key == 'signature':             # <<<<<<<<<<<<<<
 *                 has_signature = True
 *             else:
*/
      goto __pyx_L5;
    }

    /* "unicorn_binance_rest_api/manager.py":466
 *                 has_signature = True
 *             else:
 *                 params.append((key, value))             # <<<<<<<<<<<<<<
 *         # sort parameters by key
 *         params.sort(key=itemgetter(0))
*/
    /*else*/ {
      __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 466, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_INCREF(__pyx_v_key);
      __Pyx_GIVEREF(__pyx_v_key);
      if (__Pyx_PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_key) != (0)) __PYX_ERR(0, 466, __pyx_L1_error);
      __Pyx_INCREF(__pyx_v_value);
      __Pyx_GIVEREF(__pyx_v_value);
      if (__Pyx_PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_v_value) != (0)) __PYX_ERR(0, 466, __pyx_L1_error);
      __pyx_t_9 = __Pyx_PyList_Append(__pyx_v_params, __pyx_t_6); if (unlikely(__pyx_t_9 == ((int)-1))) __PYX_ERR(0, 466, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    }
    __pyx_L5:;
  }
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

  /* "unicorn_binance_rest_api/manager.py":468
 *                 params.append((key, value))
 *         # sort parameters by key
 *         params.sort(key=itemgetter(0))             # <<<<<<<<<<<<<<
 *         if has_signature:
 *             params.append(('signature', data['signature']))
*/
  __pyx_t_6 = __pyx_v_params;
  __Pyx_INCREF(__pyx_t_6);
  __pyx_t_10 = NULL;
  __Pyx_GetModuleGlobalName(__pyx_t_11, __pyx_mstate_global->__pyx_n_u_itemgetter); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 468, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_11);
  __pyx_t_12 = 1;
  #if CYTHON_UNPACK_METHODS
  if (unlikely(PyMethod_Check(__pyx_t_11))) {
    __pyx_t_10 = PyMethod_GET_SELF(__pyx_t_11);
    assert(__pyx_t_10);
    PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_11);
    __Pyx_INCREF(__pyx_t_10);
    __Pyx_INCREF(__pyx__function);
    __Pyx_DECREF_SET(__pyx_t_11, __pyx__function);
    __pyx_t_12 = 0;
  }
  #endif
  {
    PyObject *__pyx_callargs[2] = {__pyx_t_10, __pyx_mstate_global->__pyx_int_0};
    __pyx_t_5 = __Pyx_PyObject_FastCall(__pyx_t_11, __pyx_callargs+__pyx_t_12, (2-__pyx_t_12) | (__pyx_t_12*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
    __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
    __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
    if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 468, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
  }
  __pyx_t_12 = 0;
  {
    PyObject *__pyx_callargs[2 + ((CYTHON_VECTORCALL) ? 1 : 0)] = {__pyx_t_6, NULL};
    __pyx_t_11 = __Pyx_MakeVectorcallBuilderKwds(1); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 468, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_11);
    if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_key, __pyx_t_5, __pyx_t_11, __pyx_callargs+1, 0) < 0) __PYX_ERR(0, 468, __pyx_L1_error)
    __pyx_t_1 = __Pyx_Object_VectorcallMethod_CallFromBuilder(__pyx_mstate_global->__pyx_n_u_sort, __pyx_callargs+__pyx_t_12, (1-__pyx_t_12) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET), __pyx_t_11);
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
    if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 468, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
  }
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

  /* "unicorn_binance_rest_api/manager.py":469
 *         # sort parameters by key
 *         params.sort(key=itemgetter(0))
 *         if has_signature:             # <<<<<<<<<<<<<<
 *             params.append(('signature', data['signature']))
 *         return params
*/
  if (__pyx_v_has_signature) {

    /* "unicorn_binance_rest_api/manager.py":470
 *         params.sort(key=itemgetter(0))
 *         if has_signature:
 *             params.append(('signature', data['signature']))             # <<<<<<<<<<<<<<
 *         return params
 * 
*/
    __pyx_t_1 = __Pyx_PyObject_Dict_GetItem(__pyx_v_data, __pyx_mstate_global->__pyx_n_u_signature); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 470, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_t_11 = PyTuple_New(2); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 470, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_11);
    __Pyx_INCREF(__pyx_mstate_global->__pyx_n_u_signature);
    __Pyx_GIVEREF(__pyx_mstate_global->__pyx_n_u_signature);
    if (__Pyx_PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_mstate_global->__pyx_n_u_signature) != (0)) __PYX_ERR(0, 470, __pyx_L1_error);
    __Pyx_GIVEREF(__pyx_t_1);
    if (__Pyx_PyTuple_SET_ITEM(__pyx_t_11, 1, __pyx_t_1) != (0)) __PYX_ERR(0, 470, __pyx_L1_error);
    __pyx_t_1 = 0;
    __pyx_t_9 = __Pyx_PyList_Append(__pyx_v_params, __pyx_t_11); if (unlikely(__pyx_t_9 == ((int)-1))) __PYX_ERR(0, 470, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;

    /* "unicorn_binance_rest_api/manager.py":469
 *         # sort parameters by key
 *         params.sort(key=itemgetter(0))
 *         if has_signature:             # <<<<<<<<<<<<<<
 *             params.append(('signature', data['signature']))
 *         return params
*/
  }

  /* "unicorn_binance_rest_api/manager.py":471
 *         if has_signature:
 *             params.append(('signature', data['signature']))
 *         return params             # <<<<<<<<<<<<<<
 * 
 *     def _request(self, method, uri, signed, force_params=False, throw_exception=True, **kwargs):
*/
  __Pyx_XDECREF(__pyx_r);
  __Pyx_INCREF(__pyx_v_params);
  __pyx_r = __pyx_v_params;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":451
 *         return m.hexdigest()
 * 
 *     @staticmethod             # <<<<<<<<<<<<<<
 *     def _order_params(data):
 *         """
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_XDECREF(__pyx_t_10);
  __Pyx_XDECREF(__pyx_t_11);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager._order_params", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_params);
  __Pyx_XDECREF(__pyx_v_key);
  __Pyx_XDECREF(__pyx_v_value);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":473
 *         return params
 * 
 *     def _request(self, method, uri, signed, force_params=False, throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         if self.sigterm is True:
 *             info = f"`BinanceRestApiManager()` instance has already been stopped and cannot be used."
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_27_request(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_27_request = {"_request", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_27_request, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_27_request(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_method = 0;
  PyObject *__pyx_v_uri = 0;
  PyObject *__pyx_v_signed = 0;
  PyObject *__pyx_v_force_params = 0;
  PyObject *__pyx_v_throw_exception = 0;
  PyObject *__pyx_v_kwargs = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[6] = {0,0,0,0,0,0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("_request (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_kwargs = PyDict_New(); if (unlikely(!__pyx_v_kwargs)) return NULL;
  __Pyx_GOTREF(__pyx_v_kwargs);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,&__pyx_mstate_global->__pyx_n_u_method,&__pyx_mstate_global->__pyx_n_u_uri,&__pyx_mstate_global->__pyx_n_u_signed,&__pyx_mstate_global->__pyx_n_u_force_params,&__pyx_mstate_global->__pyx_n_u_throw_exception,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 473, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  6:
        values[5] = __Pyx_ArgRef_FASTCALL(__pyx_args, 5);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 473, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  5:
        values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 473, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  4:
        values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 473, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  3:
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 473, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 473, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 473, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_kwargs, values, kwd_pos_args, __pyx_kwds_len, "_request", 1) < 0) __PYX_ERR(0, 473, __pyx_L3_error)
      if (!values[4]) values[4] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_False)));
      if (!values[5]) values[5] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_True)));
      for (Py_ssize_t i = __pyx_nargs; i < 4; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("_request", 0, 4, 6, i); __PYX_ERR(0, 473, __pyx_L3_error) }
      }
    } else {
      switch (__pyx_nargs) {
        case  6:
        values[5] = __Pyx_ArgRef_FASTCALL(__pyx_args, 5);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 473, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  5:
        values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 473, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  4:
        values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 473, __pyx_L3_error)
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 473, __pyx_L3_error)
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 473, __pyx_L3_error)
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 473, __pyx_L3_error)
        break;
        default: goto __pyx_L5_argtuple_error;
      }
      if (!values[4]) values[4] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_False)));
      if (!values[5]) values[5] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_True)));
    }
    __pyx_v_self = values[0];
    __pyx_v_method = values[1];
    __pyx_v_uri = values[2];
    __pyx_v_signed = values[3];
    __pyx_v_force_params = values[4];
    __pyx_v_throw_exception = values[5];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("_request", 0, 4, 6, __pyx_nargs); __PYX_ERR(0, 473, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_kwargs); __pyx_v_kwargs = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager._request", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_26_request(__pyx_self, __pyx_v_self, __pyx_v_method, __pyx_v_uri, __pyx_v_signed, __pyx_v_force_params, __pyx_v_throw_exception, __pyx_v_kwargs);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_kwargs);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
static PyObject *__pyx_gb_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_8_request_2generator2(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value); /* proto */

/* "unicorn_binance_rest_api/manager.py":529
 *         # if get request assign data array to params value for requests lib
 *         if data and (method == 'get' or force_params):
 *             kwargs['params'] = '&'.join('%s=%s' % (data[0], data[1]) for data in kwargs['data'])             # <<<<<<<<<<<<<<
 *             del kwargs['data']
 * 
*/

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_8_request_genexpr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_genexpr_arg_0) {
  struct __pyx_obj_24unicorn_binance_rest_api_7manager___pyx_scope_struct__genexpr *__pyx_cur_scope;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("genexpr", 0);
  __pyx_cur_scope = (struct __pyx_obj_24unicorn_binance_rest_api_7manager___pyx_scope_struct__genexpr *)__pyx_tp_new_24unicorn_binance_rest_api_7manager___pyx_scope_struct__genexpr(__pyx_mstate_global->__pyx_ptype_24unicorn_binance_rest_api_7manager___pyx_scope_struct__genexpr, __pyx_mstate_global->__pyx_empty_tuple, NULL);
  if (unlikely(!__pyx_cur_scope)) {
    __pyx_cur_scope = ((struct __pyx_obj_24unicorn_binance_rest_api_7manager___pyx_scope_struct__genexpr *)Py_None);
    __Pyx_INCREF(Py_None);
    __PYX_ERR(0, 529, __pyx_L1_error)
  } else {
    __Pyx_GOTREF((PyObject *)__pyx_cur_scope);
  }
  __pyx_cur_scope->__pyx_genexpr_arg_0 = __pyx_genexpr_arg_0;
  __Pyx_INCREF(__pyx_cur_scope->__pyx_genexpr_arg_0);
  __Pyx_GIVEREF(__pyx_cur_scope->__pyx_genexpr_arg_0);
  {
    __pyx_CoroutineObject *gen = __Pyx_Generator_New((__pyx_coroutine_body_t) __pyx_gb_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_8_request_2generator2, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[0]), (PyObject *) __pyx_cur_scope, __pyx_mstate_global->__pyx_n_u_genexpr, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager__request_l, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager); if (unlikely(!gen)) __PYX_ERR(0, 529, __pyx_L1_error)
    __Pyx_DECREF(__pyx_cur_scope);
    __Pyx_RefNannyFinishContext();
    return (PyObject *) gen;
  }

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager._request.genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __Pyx_DECREF((PyObject *)__pyx_cur_scope);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_gb_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_8_request_2generator2(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value) /* generator body */
{
  struct __pyx_obj_24unicorn_binance_rest_api_7manager___pyx_scope_struct__genexpr *__pyx_cur_scope = ((struct __pyx_obj_24unicorn_binance_rest_api_7manager___pyx_scope_struct__genexpr *)__pyx_generator->closure);
  PyObject *__pyx_r = NULL;
  PyObject *__pyx_t_1 = NULL;
  Py_ssize_t __pyx_t_2;
  PyObject *(*__pyx_t_3)(PyObject *);
  PyObject *__pyx_t_4 = NULL;
  PyObject *__pyx_t_5 = NULL;
  PyObject *__pyx_t_6 = NULL;
  PyObject *__pyx_t_7[3];
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("genexpr", 0);
  switch (__pyx_generator->resume_label) {
    case 0: goto __pyx_L3_first_run;
    default: /* CPython raises the right error here */
    __Pyx_RefNannyFinishContext();
    return NULL;
  }
  __pyx_L3_first_run:;
  if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 529, __pyx_L1_error)
  __pyx_r = PyList_New(0); if (unlikely(!__pyx_r)) __PYX_ERR(0, 529, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_r);
  if (unlikely(!__pyx_cur_scope->__pyx_genexpr_arg_0)) { __Pyx_RaiseUnboundLocalError(".0"); __PYX_ERR(0, 529, __pyx_L1_error) }
  if (likely(PyList_CheckExact(__pyx_cur_scope->__pyx_genexpr_arg_0)) || PyTuple_CheckExact(__pyx_cur_scope->__pyx_genexpr_arg_0)) {
    __pyx_t_1 = __pyx_cur_scope->__pyx_genexpr_arg_0; __Pyx_INCREF(__pyx_t_1);
    __pyx_t_2 = 0;
    __pyx_t_3 = NULL;
  } else {
    __pyx_t_2 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_cur_scope->__pyx_genexpr_arg_0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 529, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_t_3 = (CYTHON_COMPILING_IN_LIMITED_API) ? PyIter_Next : __Pyx_PyObject_GetIterNextFunc(__pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 529, __pyx_L1_error)
  }
  for (;;) {
    if (likely(!__pyx_t_3)) {
      if (likely(PyList_CheckExact(__pyx_t_1))) {
        {
          Py_ssize_t __pyx_temp = __Pyx_PyList_GET_SIZE(__pyx_t_1);
          #if !CYTHON_ASSUME_SAFE_SIZE
          if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 529, __pyx_L1_error)
          #endif
          if (__pyx_t_2 >= __pyx_temp) break;
        }
        __pyx_t_4 = __Pyx_PyList_GetItemRef(__pyx_t_1, __pyx_t_2);
        ++__pyx_t_2;
      } else {
        {
          Py_ssize_t __pyx_temp = __Pyx_PyTuple_GET_SIZE(__pyx_t_1);
          #if !CYTHON_ASSUME_SAFE_SIZE
          if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 529, __pyx_L1_error)
          #endif
          if (__pyx_t_2 >= __pyx_temp) break;
        }
        #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
        __pyx_t_4 = __Pyx_NewRef(PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2));
        #else
        __pyx_t_4 = __Pyx_PySequence_ITEM(__pyx_t_1, __pyx_t_2);
        #endif
        ++__pyx_t_2;
      }
      if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 529, __pyx_L1_error)
    } else {
      __pyx_t_4 = __pyx_t_3(__pyx_t_1);
      if (unlikely(!__pyx_t_4)) {
        PyObject* exc_type = PyErr_Occurred();
        if (exc_type) {
          if (unlikely(!__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) __PYX_ERR(0, 529, __pyx_L1_error)
          PyErr_Clear();
        }
        break;
      }
    }
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_XGOTREF(__pyx_cur_scope->__pyx_v_data);
    __Pyx_XDECREF_SET(__pyx_cur_scope->__pyx_v_data, __pyx_t_4);
    __Pyx_GIVEREF(__pyx_t_4);
    __pyx_t_4 = 0;
    __pyx_t_4 = __Pyx_GetItemInt(__pyx_cur_scope->__pyx_v_data, 0, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 529, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_5 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Str(__pyx_t_4), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 529, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_4 = __Pyx_GetItemInt(__pyx_cur_scope->__pyx_v_data, 1, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 529, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_6 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Str(__pyx_t_4), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 529, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_6);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_7[0] = __pyx_t_5;
    __pyx_t_7[1] = __pyx_mstate_global->__pyx_kp_u__10;
    __pyx_t_7[2] = __pyx_t_6;
    __pyx_t_4 = __Pyx_PyUnicode_Join(__pyx_t_7, 3, __Pyx_PyUnicode_GET_LENGTH(__pyx_t_5) + 1 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_6), 127 | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_5) | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_6));
    if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 529, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    if (unlikely(__Pyx_ListComp_Append(__pyx_r, (PyObject*)__pyx_t_4))) __PYX_ERR(0, 529, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
  }
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  CYTHON_MAYBE_UNUSED_VAR(__pyx_cur_scope);

  /* function exit code */
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_r); __pyx_r = 0;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_6);
  if (__Pyx_PyErr_Occurred()) {
    __Pyx_Generator_Replace_StopIteration(0);
    __Pyx_AddTraceback("genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  }
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  #if !CYTHON_USE_EXC_INFO_STACK
  __Pyx_Coroutine_ResetAndClearException(__pyx_generator);
  #endif
  __pyx_generator->resume_label = -1;
  __Pyx_Coroutine_clear((PyObject*)__pyx_generator);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":473
 *         return params
 * 
 *     def _request(self, method, uri, signed, force_params=False, throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         if self.sigterm is True:
 *             info = f"`BinanceRestApiManager()` instance has already been stopped and cannot be used."
*/

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_26_request(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_method, PyObject *__pyx_v_uri, PyObject *__pyx_v_signed, PyObject *__pyx_v_force_params, PyObject *__pyx_v_throw_exception, PyObject *__pyx_v_kwargs) {
  PyObject *__pyx_v_info = NULL;
  PyObject *__pyx_v_api_key = NULL;
  PyObject *__pyx_v_api_secret = NULL;
  PyObject *__pyx_v_data = NULL;
  PyObject *__pyx_v_null_args = NULL;
  PyObject *__pyx_v_i = NULL;
  PyObject *__pyx_8genexpr1__pyx_v_i = NULL;
  CYTHON_UNUSED PyObject *__pyx_8genexpr1__pyx_v_key = NULL;
  PyObject *__pyx_8genexpr1__pyx_v_value = NULL;
  PyObject *__pyx_gb_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_8_request_2generator2 = 0;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  PyObject *__pyx_t_4 = NULL;
  PyObject *__pyx_t_5 = NULL;
  size_t __pyx_t_6;
  PyObject *__pyx_t_7 = NULL;
  PyObject *__pyx_t_8 = NULL;
  PyObject *__pyx_t_9 = NULL;
  int __pyx_t_10;
  int __pyx_t_11;
  Py_ssize_t __pyx_t_12;
  PyObject *(*__pyx_t_13)(PyObject *);
  PyObject *__pyx_t_14 = NULL;
  PyObject *__pyx_t_15 = NULL;
  PyObject *__pyx_t_16 = NULL;
  PyObject *(*__pyx_t_17)(PyObject *);
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("_request", 0);

  /* "unicorn_binance_rest_api/manager.py":474
 * 
 *     def _request(self, method, uri, signed, force_params=False, throw_exception=True, **kwargs):
 *         if self.sigterm is True:             # <<<<<<<<<<<<<<
 *             info = f"`BinanceRestApiManager()` instance has already been stopped and cannot be used."
 *             logger.critical(info)
*/
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_sigterm); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 474, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = (__pyx_t_1 == Py_True);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  if (unlikely(__pyx_t_2)) {

    /* "unicorn_binance_rest_api/manager.py":475
 *     def _request(self, method, uri, signed, force_params=False, throw_exception=True, **kwargs):
 *         if self.sigterm is True:
 *             info = f"`BinanceRestApiManager()` instance has already been stopped and cannot be used."             # <<<<<<<<<<<<<<
 *             logger.critical(info)
 *             raise AlreadyStoppedError(info)
*/
    __Pyx_INCREF(__pyx_mstate_global->__pyx_kp_u_BinanceRestApiManager_instance);
    __pyx_v_info = __pyx_mstate_global->__pyx_kp_u_BinanceRestApiManager_instance;

    /* "unicorn_binance_rest_api/manager.py":476
 *         if self.sigterm is True:
 *             info = f"`BinanceRestApiManager()` instance has already been stopped and cannot be used."
 *             logger.critical(info)             # <<<<<<<<<<<<<<
 *             raise AlreadyStoppedError(info)
 * 
*/
    __pyx_t_3 = NULL;
    __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_logger); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 476, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_critical); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 476, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_6 = 1;
    #if CYTHON_UNPACK_METHODS
    if (unlikely(PyMethod_Check(__pyx_t_5))) {
      __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_5);
      assert(__pyx_t_3);
      PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_5);
      __Pyx_INCREF(__pyx_t_3);
      __Pyx_INCREF(__pyx__function);
      __Pyx_DECREF_SET(__pyx_t_5, __pyx__function);
      __pyx_t_6 = 0;
    }
    #endif
    {
      PyObject *__pyx_callargs[2] = {__pyx_t_3, __pyx_v_info};
      __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_5, __pyx_callargs+__pyx_t_6, (2-__pyx_t_6) | (__pyx_t_6*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
      __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 476, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_1);
    }
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

    /* "unicorn_binance_rest_api/manager.py":477
 *             info = f"`BinanceRestApiManager()` instance has already been stopped and cannot be used."
 *             logger.critical(info)
 *             raise AlreadyStoppedError(info)             # <<<<<<<<<<<<<<
 * 
 *         # if an api_secret and api_key are provided the request session gets reset with new settings
*/
    __pyx_t_5 = NULL;
    __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_AlreadyStoppedError); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 477, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_6 = 1;
    #if CYTHON_UNPACK_METHODS
    if (unlikely(PyMethod_Check(__pyx_t_3))) {
      __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_3);
      assert(__pyx_t_5);
      PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_3);
      __Pyx_INCREF(__pyx_t_5);
      __Pyx_INCREF(__pyx__function);
      __Pyx_DECREF_SET(__pyx_t_3, __pyx__function);
      __pyx_t_6 = 0;
    }
    #endif
    {
      PyObject *__pyx_callargs[2] = {__pyx_t_5, __pyx_v_info};
      __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+__pyx_t_6, (2-__pyx_t_6) | (__pyx_t_6*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
      __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 477, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_1);
    }
    __Pyx_Raise(__pyx_t_1, 0, 0, 0);
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __PYX_ERR(0, 477, __pyx_L1_error)

    /* "unicorn_binance_rest_api/manager.py":474
 * 
 *     def _request(self, method, uri, signed, force_params=False, throw_exception=True, **kwargs):
 *         if self.sigterm is True:             # <<<<<<<<<<<<<<
 *             info = f"`BinanceRestApiManager()` instance has already been stopped and cannot be used."
 *             logger.critical(info)
*/
  }

  /* "unicorn_binance_rest_api/manager.py":480
 * 
 *         # if an api_secret and api_key are provided the request session gets reset with new settings
 *         try:             # <<<<<<<<<<<<<<
 *             api_key = kwargs['api_key']
 *             api_secret = kwargs['api_secret']
*/
  {
    __Pyx_PyThreadState_declare
    __Pyx_PyThreadState_assign
    __Pyx_ExceptionSave(&__pyx_t_7, &__pyx_t_8, &__pyx_t_9);
    __Pyx_XGOTREF(__pyx_t_7);
    __Pyx_XGOTREF(__pyx_t_8);
    __Pyx_XGOTREF(__pyx_t_9);
    /*try:*/ {

      /* "unicorn_binance_rest_api/manager.py":481
 *         # if an api_secret and api_key are provided the request session gets reset with new settings
 *         try:
 *             api_key = kwargs['api_key']             # <<<<<<<<<<<<<<
 *             api_secret = kwargs['api_secret']
 *             del kwargs['api_key']
*/
      __pyx_t_1 = __Pyx_PyDict_GetItem(__pyx_v_kwargs, __pyx_mstate_global->__pyx_n_u_api_key); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 481, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_v_api_key = __pyx_t_1;
      __pyx_t_1 = 0;

      /* "unicorn_binance_rest_api/manager.py":482
 *         try:
 *             api_key = kwargs['api_key']
 *             api_secret = kwargs['api_secret']             # <<<<<<<<<<<<<<
 *             del kwargs['api_key']
 *             del kwargs['api_secret']
*/
      __pyx_t_1 = __Pyx_PyDict_GetItem(__pyx_v_kwargs, __pyx_mstate_global->__pyx_n_u_api_secret); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 482, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_v_api_secret = __pyx_t_1;
      __pyx_t_1 = 0;

      /* "unicorn_binance_rest_api/manager.py":483
 *             api_key = kwargs['api_key']
 *             api_secret = kwargs['api_secret']
 *             del kwargs['api_key']             # <<<<<<<<<<<<<<
 *             del kwargs['api_secret']
 *         except KeyError:
*/
      if (unlikely((PyDict_DelItem(__pyx_v_kwargs, __pyx_mstate_global->__pyx_n_u_api_key) < 0))) __PYX_ERR(0, 483, __pyx_L4_error)

      /* "unicorn_binance_rest_api/manager.py":484
 *             api_secret = kwargs['api_secret']
 *             del kwargs['api_key']
 *             del kwargs['api_secret']             # <<<<<<<<<<<<<<
 *         except KeyError:
 *             api_key = None
*/
      if (unlikely((PyDict_DelItem(__pyx_v_kwargs, __pyx_mstate_global->__pyx_n_u_api_secret) < 0))) __PYX_ERR(0, 484, __pyx_L4_error)

      /* "unicorn_binance_rest_api/manager.py":480
 * 
 *         # if an api_secret and api_key are provided the request session gets reset with new settings
 *         try:             # <<<<<<<<<<<<<<
 *             api_key = kwargs['api_key']
 *             api_secret = kwargs['api_secret']
*/
    }
    __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
    __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
    __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
    goto __pyx_L9_try_end;
    __pyx_L4_error:;
    __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
    __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;

    /* "unicorn_binance_rest_api/manager.py":485
 *             del kwargs['api_key']
 *             del kwargs['api_secret']
 *         except KeyError:             # <<<<<<<<<<<<<<
 *             api_key = None
 *             api_secret = None
*/
    __pyx_t_10 = __Pyx_PyErr_ExceptionMatches(__pyx_builtin_KeyError);
    if (__pyx_t_10) {
      __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager._request", __pyx_clineno, __pyx_lineno, __pyx_filename);
      if (__Pyx_GetException(&__pyx_t_1, &__pyx_t_3, &__pyx_t_5) < 0) __PYX_ERR(0, 485, __pyx_L6_except_error)
      __Pyx_XGOTREF(__pyx_t_1);
      __Pyx_XGOTREF(__pyx_t_3);
      __Pyx_XGOTREF(__pyx_t_5);

      /* "unicorn_binance_rest_api/manager.py":486
 *             del kwargs['api_secret']
 *         except KeyError:
 *             api_key = None             # <<<<<<<<<<<<<<
 *             api_secret = None
 *         if api_key is not None and api_secret is not None:
*/
      __Pyx_INCREF(Py_None);
      __Pyx_XDECREF_SET(__pyx_v_api_key, Py_None);

      /* "unicorn_binance_rest_api/manager.py":487
 *         except KeyError:
 *             api_key = None
 *             api_secret = None             # <<<<<<<<<<<<<<
 *         if api_key is not None and api_secret is not None:
 *             logger.debug(f"_request() - Got `api_key` and `api_secret` via `**kwargs`, resetting request session.")
*/
      __Pyx_INCREF(Py_None);
      __Pyx_XDECREF_SET(__pyx_v_api_secret, Py_None);
      __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
      goto __pyx_L5_exception_handled;
    }
    goto __pyx_L6_except_error;

    /* "unicorn_binance_rest_api/manager.py":480
 * 
 *         # if an api_secret and api_key are provided the request session gets reset with new settings
 *         try:             # <<<<<<<<<<<<<<
 *             api_key = kwargs['api_key']
 *             api_secret = kwargs['api_secret']
*/
    __pyx_L6_except_error:;
    __Pyx_XGIVEREF(__pyx_t_7);
    __Pyx_XGIVEREF(__pyx_t_8);
    __Pyx_XGIVEREF(__pyx_t_9);
    __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
    goto __pyx_L1_error;
    __pyx_L5_exception_handled:;
    __Pyx_XGIVEREF(__pyx_t_7);
    __Pyx_XGIVEREF(__pyx_t_8);
    __Pyx_XGIVEREF(__pyx_t_9);
    __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
    __pyx_L9_try_end:;
  }

  /* "unicorn_binance_rest_api/manager.py":488
 *             api_key = None
 *             api_secret = None
 *         if api_key is not None and api_secret is not None:             # <<<<<<<<<<<<<<
 *             logger.debug(f"_request() - Got `api_key` and `api_secret` via `**kwargs`, resetting request session.")
 *             self.API_KEY = api_key
*/
  __pyx_t_11 = (__pyx_v_api_key != Py_None);
  if (__pyx_t_11) {
  } else {
    __pyx_t_2 = __pyx_t_11;
    goto __pyx_L13_bool_binop_done;
  }
  __pyx_t_11 = (__pyx_v_api_secret != Py_None);
  __pyx_t_2 = __pyx_t_11;
  __pyx_L13_bool_binop_done:;
  if (__pyx_t_2) {

    /* "unicorn_binance_rest_api/manager.py":489
 *             api_secret = None
 *         if api_key is not None and api_secret is not None:
 *             logger.debug(f"_request() - Got `api_key` and `api_secret` via `**kwargs`, resetting request session.")             # <<<<<<<<<<<<<<
 *             self.API_KEY = api_key
 *             self.API_SECRET = api_secret
*/
    __pyx_t_3 = NULL;
    __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_mstate_global->__pyx_n_u_logger); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 489, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_mstate_global->__pyx_n_u_debug); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 489, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __pyx_t_6 = 1;
    #if CYTHON_UNPACK_METHODS
    if (unlikely(PyMethod_Check(__pyx_t_4))) {
      __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_4);
      assert(__pyx_t_3);
      PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_4);
      __Pyx_INCREF(__pyx_t_3);
      __Pyx_INCREF(__pyx__function);
      __Pyx_DECREF_SET(__pyx_t_4, __pyx__function);
      __pyx_t_6 = 0;
    }
    #endif
    {
      PyObject *__pyx_callargs[2] = {__pyx_t_3, __pyx_mstate_global->__pyx_kp_u_request_Got_api_key_and_api_sec};
      __pyx_t_5 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+__pyx_t_6, (2-__pyx_t_6) | (__pyx_t_6*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
      __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 489, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_5);
    }
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;

    /* "unicorn_binance_rest_api/manager.py":490
 *         if api_key is not None and api_secret is not None:
 *             logger.debug(f"_request() - Got `api_key` and `api_secret` via `**kwargs`, resetting request session.")
 *             self.API_KEY = api_key             # <<<<<<<<<<<<<<
 *             self.API_SECRET = api_secret
 *             if self.session is not None:
*/
    if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_API_KEY, __pyx_v_api_key) < 0) __PYX_ERR(0, 490, __pyx_L1_error)

    /* "unicorn_binance_rest_api/manager.py":491
 *             logger.debug(f"_request() - Got `api_key` and `api_secret` via `**kwargs`, resetting request session.")
 *             self.API_KEY = api_key
 *             self.API_SECRET = api_secret             # <<<<<<<<<<<<<<
 *             if self.session is not None:
 *                 self.session.close()
*/
    if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_API_SECRET, __pyx_v_api_secret) < 0) __PYX_ERR(0, 491, __pyx_L1_error)

    /* "unicorn_binance_rest_api/manager.py":492
 *             self.API_KEY = api_key
 *             self.API_SECRET = api_secret
 *             if self.session is not None:             # <<<<<<<<<<<<<<
 *                 self.session.close()
 *             self.session = self._init_session()
*/
    __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_session); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 492, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_2 = (__pyx_t_5 != Py_None);
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    if (__pyx_t_2) {

      /* "unicorn_binance_rest_api/manager.py":493
 *             self.API_SECRET = api_secret
 *             if self.session is not None:
 *                 self.session.close()             # <<<<<<<<<<<<<<
 *             self.session = self._init_session()
 * 
*/
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_session); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 493, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_4 = __pyx_t_3;
      __Pyx_INCREF(__pyx_t_4);
      __pyx_t_6 = 0;
      {
        PyObject *__pyx_callargs[2] = {__pyx_t_4, NULL};
        __pyx_t_5 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_close, __pyx_callargs+__pyx_t_6, (1-__pyx_t_6) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 493, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_5);
      }
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;

      /* "unicorn_binance_rest_api/manager.py":492
 *             self.API_KEY = api_key
 *             self.API_SECRET = api_secret
 *             if self.session is not None:             # <<<<<<<<<<<<<<
 *                 self.session.close()
 *             self.session = self._init_session()
*/
    }

    /* "unicorn_binance_rest_api/manager.py":494
 *             if self.session is not None:
 *                 self.session.close()
 *             self.session = self._init_session()             # <<<<<<<<<<<<<<
 * 
 *         # set default requests timeout
*/
    __pyx_t_3 = __pyx_v_self;
    __Pyx_INCREF(__pyx_t_3);
    __pyx_t_6 = 0;
    {
      PyObject *__pyx_callargs[2] = {__pyx_t_3, NULL};
      __pyx_t_5 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_init_session, __pyx_callargs+__pyx_t_6, (1-__pyx_t_6) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
      __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 494, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_5);
    }
    if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_session, __pyx_t_5) < 0) __PYX_ERR(0, 494, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;

    /* "unicorn_binance_rest_api/manager.py":488
 *             api_key = None
 *             api_secret = None
 *         if api_key is not None and api_secret is not None:             # <<<<<<<<<<<<<<
 *             logger.debug(f"_request() - Got `api_key` and `api_secret` via `**kwargs`, resetting request session.")
 *             self.API_KEY = api_key
*/
  }

  /* "unicorn_binance_rest_api/manager.py":497
 * 
 *         # set default requests timeout
 *         kwargs['timeout'] = 10             # <<<<<<<<<<<<<<
 * 
 *         # add our global requests params
*/
  if (unlikely((PyDict_SetItem(__pyx_v_kwargs, __pyx_mstate_global->__pyx_n_u_timeout, __pyx_mstate_global->__pyx_int_10) < 0))) __PYX_ERR(0, 497, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":500
 * 
 *         # add our global requests params
 *         if self._requests_params:             # <<<<<<<<<<<<<<
 *             kwargs.update(self._requests_params)
 * 
*/
  __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_requests_params_2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 500, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(0, 500, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  if (__pyx_t_2) {

    /* "unicorn_binance_rest_api/manager.py":501
 *         # add our global requests params
 *         if self._requests_params:
 *             kwargs.update(self._requests_params)             # <<<<<<<<<<<<<<
 * 
 *         data = kwargs.get('data', None)
*/
    __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_requests_params_2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 501, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_3 = __Pyx_CallUnboundCMethod1(&__pyx_mstate_global->__pyx_umethod_PyDict_Type__update, __pyx_v_kwargs, __pyx_t_5); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 501, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;

    /* "unicorn_binance_rest_api/manager.py":500
 * 
 *         # add our global requests params
 *         if self._requests_params:             # <<<<<<<<<<<<<<
 *             kwargs.update(self._requests_params)
 * 
*/
  }

  /* "unicorn_binance_rest_api/manager.py":503
 *             kwargs.update(self._requests_params)
 * 
 *         data = kwargs.get('data', None)             # <<<<<<<<<<<<<<
 *         if data and isinstance(data, dict):
 *             kwargs['data'] = data
*/
  __pyx_t_3 = __Pyx_PyDict_GetItemDefault(__pyx_v_kwargs, __pyx_mstate_global->__pyx_n_u_data, Py_None); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 503, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __pyx_v_data = __pyx_t_3;
  __pyx_t_3 = 0;

  /* "unicorn_binance_rest_api/manager.py":504
 * 
 *         data = kwargs.get('data', None)
 *         if data and isinstance(data, dict):             # <<<<<<<<<<<<<<
 *             kwargs['data'] = data
 * 
*/
  __pyx_t_11 = __Pyx_PyObject_IsTrue(__pyx_v_data); if (unlikely((__pyx_t_11 < 0))) __PYX_ERR(0, 504, __pyx_L1_error)
  if (__pyx_t_11) {
  } else {
    __pyx_t_2 = __pyx_t_11;
    goto __pyx_L18_bool_binop_done;
  }
  __pyx_t_11 = PyDict_Check(__pyx_v_data); 
  __pyx_t_2 = __pyx_t_11;
  __pyx_L18_bool_binop_done:;
  if (__pyx_t_2) {

    /* "unicorn_binance_rest_api/manager.py":505
 *         data = kwargs.get('data', None)
 *         if data and isinstance(data, dict):
 *             kwargs['data'] = data             # <<<<<<<<<<<<<<
 * 
 *             # find any requests params passed and apply them
*/
    if (unlikely((PyDict_SetItem(__pyx_v_kwargs, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_data) < 0))) __PYX_ERR(0, 505, __pyx_L1_error)

    /* "unicorn_binance_rest_api/manager.py":508
 * 
 *             # find any requests params passed and apply them
 *             if 'requests_params' in kwargs['data']:             # <<<<<<<<<<<<<<
 *                 # merge requests params into kwargs
 *                 kwargs.update(kwargs['data']['requests_params'])
*/
    __pyx_t_3 = __Pyx_PyDict_GetItem(__pyx_v_kwargs, __pyx_mstate_global->__pyx_n_u_data); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 508, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_2 = (__Pyx_PySequence_ContainsTF(__pyx_mstate_global->__pyx_n_u_requests_params, __pyx_t_3, Py_EQ)); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(0, 508, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    if (__pyx_t_2) {

      /* "unicorn_binance_rest_api/manager.py":510
 *             if 'requests_params' in kwargs['data']:
 *                 # merge requests params into kwargs
 *                 kwargs.update(kwargs['data']['requests_params'])             # <<<<<<<<<<<<<<
 *                 del kwargs['data']['requests_params']
 * 
*/
      __pyx_t_3 = __Pyx_PyDict_GetItem(__pyx_v_kwargs, __pyx_mstate_global->__pyx_n_u_data); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 510, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_5 = __Pyx_PyObject_Dict_GetItem(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_requests_params); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 510, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_3 = __Pyx_CallUnboundCMethod1(&__pyx_mstate_global->__pyx_umethod_PyDict_Type__update, __pyx_v_kwargs, __pyx_t_5); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 510, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;

      /* "unicorn_binance_rest_api/manager.py":511
 *                 # merge requests params into kwargs
 *                 kwargs.update(kwargs['data']['requests_params'])
 *                 del kwargs['data']['requests_params']             # <<<<<<<<<<<<<<
 * 
 *         if signed:
*/
      __pyx_t_3 = __Pyx_PyDict_GetItem(__pyx_v_kwargs, __pyx_mstate_global->__pyx_n_u_data); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 511, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_3);
      if (unlikely((PyObject_DelItem(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_requests_params) < 0))) __PYX_ERR(0, 511, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;

      /* "unicorn_binance_rest_api/manager.py":508
 * 
 *             # find any requests params passed and apply them
 *             if 'requests_params' in kwargs['data']:             # <<<<<<<<<<<<<<
 *                 # merge requests params into kwargs
 *                 kwargs.update(kwargs['data']['requests_params'])
*/
    }

    /* "unicorn_binance_rest_api/manager.py":504
 * 
 *         data = kwargs.get('data', None)
 *         if data and isinstance(data, dict):             # <<<<<<<<<<<<<<
 *             kwargs['data'] = data
 * 
*/
  }

  /* "unicorn_binance_rest_api/manager.py":513
 *                 del kwargs['data']['requests_params']
 * 
 *         if signed:             # <<<<<<<<<<<<<<
 *             # generate signature
 *             kwargs['data']['timestamp'] = int(time.time() * 1000 + self.timestamp_offset)
*/
  __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_signed); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(0, 513, __pyx_L1_error)
  if (__pyx_t_2) {

    /* "unicorn_binance_rest_api/manager.py":515
 *         if signed:
 *             # generate signature
 *             kwargs['data']['timestamp'] = int(time.time() * 1000 + self.timestamp_offset)             # <<<<<<<<<<<<<<
 *             kwargs['data']['signature'] = self._generate_signature(kwargs['data'])
 * 
*/
    __pyx_t_5 = NULL;
    __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_time); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 515, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_time); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 515, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_6 = 1;
    #if CYTHON_UNPACK_METHODS
    if (unlikely(PyMethod_Check(__pyx_t_1))) {
      __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_1);
      assert(__pyx_t_5);
      PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_1);
      __Pyx_INCREF(__pyx_t_5);
      __Pyx_INCREF(__pyx__function);
      __Pyx_DECREF_SET(__pyx_t_1, __pyx__function);
      __pyx_t_6 = 0;
    }
    #endif
    {
      PyObject *__pyx_callargs[2] = {__pyx_t_5, NULL};
      __pyx_t_3 = __Pyx_PyObject_FastCall(__pyx_t_1, __pyx_callargs+__pyx_t_6, (1-__pyx_t_6) | (__pyx_t_6*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
      __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 515, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_3);
    }
    __pyx_t_1 = __Pyx_PyLong_MultiplyObjC(__pyx_t_3, __pyx_mstate_global->__pyx_int_1000, 0x3E8, 0, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 515, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_timestamp_offset); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 515, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_5 = PyNumber_Add(__pyx_t_1, __pyx_t_3); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 515, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_t_3 = __Pyx_PyNumber_Int(__pyx_t_5); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 515, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    __pyx_t_5 = __Pyx_PyDict_GetItem(__pyx_v_kwargs, __pyx_mstate_global->__pyx_n_u_data); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 515, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    if (unlikely((PyObject_SetItem(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_timestamp, __pyx_t_3) < 0))) __PYX_ERR(0, 515, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;

    /* "unicorn_binance_rest_api/manager.py":516
 *             # generate signature
 *             kwargs['data']['timestamp'] = int(time.time() * 1000 + self.timestamp_offset)
 *             kwargs['data']['signature'] = self._generate_signature(kwargs['data'])             # <<<<<<<<<<<<<<
 * 
 *         # sort get and post params to match signature order
*/
    __pyx_t_5 = __pyx_v_self;
    __Pyx_INCREF(__pyx_t_5);
    __pyx_t_1 = __Pyx_PyDict_GetItem(__pyx_v_kwargs, __pyx_mstate_global->__pyx_n_u_data); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 516, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_t_6 = 0;
    {
      PyObject *__pyx_callargs[2] = {__pyx_t_5, __pyx_t_1};
      __pyx_t_3 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_generate_signature, __pyx_callargs+__pyx_t_6, (2-__pyx_t_6) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
      __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 516, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_3);
    }
    __pyx_t_1 = __Pyx_PyDict_GetItem(__pyx_v_kwargs, __pyx_mstate_global->__pyx_n_u_data); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 516, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    if (unlikely((PyObject_SetItem(__pyx_t_1, __pyx_mstate_global->__pyx_n_u_signature, __pyx_t_3) < 0))) __PYX_ERR(0, 516, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;

    /* "unicorn_binance_rest_api/manager.py":513
 *                 del kwargs['data']['requests_params']
 * 
 *         if signed:             # <<<<<<<<<<<<<<
 *             # generate signature
 *             kwargs['data']['timestamp'] = int(time.time() * 1000 + self.timestamp_offset)
*/
  }

  /* "unicorn_binance_rest_api/manager.py":519
 * 
 *         # sort get and post params to match signature order
 *         if data:             # <<<<<<<<<<<<<<
 *             # sort post params
 *             kwargs['data'] = self._order_params(kwargs['data'])
*/
  __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_data); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(0, 519, __pyx_L1_error)
  if (__pyx_t_2) {

    /* "unicorn_binance_rest_api/manager.py":521
 *         if data:
 *             # sort post params
 *             kwargs['data'] = self._order_params(kwargs['data'])             # <<<<<<<<<<<<<<
 *             # Remove any arguments with values of None.
 *             null_args = [i for i, (key, value) in enumerate(kwargs['data']) if value is None]
*/
    __pyx_t_1 = __pyx_v_self;
    __Pyx_INCREF(__pyx_t_1);
    __pyx_t_5 = __Pyx_PyDict_GetItem(__pyx_v_kwargs, __pyx_mstate_global->__pyx_n_u_data); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 521, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_6 = 0;
    {
      PyObject *__pyx_callargs[2] = {__pyx_t_1, __pyx_t_5};
      __pyx_t_3 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_order_params, __pyx_callargs+__pyx_t_6, (2-__pyx_t_6) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
      __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 521, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_3);
    }
    if (unlikely((PyDict_SetItem(__pyx_v_kwargs, __pyx_mstate_global->__pyx_n_u_data, __pyx_t_3) < 0))) __PYX_ERR(0, 521, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;

    /* "unicorn_binance_rest_api/manager.py":523
 *             kwargs['data'] = self._order_params(kwargs['data'])
 *             # Remove any arguments with values of None.
 *             null_args = [i for i, (key, value) in enumerate(kwargs['data']) if value is None]             # <<<<<<<<<<<<<<
 *             for i in reversed(null_args):
 *                 del kwargs['data'][i]
*/
    { /* enter inner scope */
      __pyx_t_3 = PyList_New(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 523, __pyx_L25_error)
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_INCREF(__pyx_mstate_global->__pyx_int_0);
      __pyx_t_5 = __pyx_mstate_global->__pyx_int_0;
      __pyx_t_1 = __Pyx_PyDict_GetItem(__pyx_v_kwargs, __pyx_mstate_global->__pyx_n_u_data); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 523, __pyx_L25_error)
      __Pyx_GOTREF(__pyx_t_1);
      if (likely(PyList_CheckExact(__pyx_t_1)) || PyTuple_CheckExact(__pyx_t_1)) {
        __pyx_t_4 = __pyx_t_1; __Pyx_INCREF(__pyx_t_4);
        __pyx_t_12 = 0;
        __pyx_t_13 = NULL;
      } else {
        __pyx_t_12 = -1; __pyx_t_4 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 523, __pyx_L25_error)
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_13 = (CYTHON_COMPILING_IN_LIMITED_API) ? PyIter_Next : __Pyx_PyObject_GetIterNextFunc(__pyx_t_4); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 523, __pyx_L25_error)
      }
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      for (;;) {
        if (likely(!__pyx_t_13)) {
          if (likely(PyList_CheckExact(__pyx_t_4))) {
            {
              Py_ssize_t __pyx_temp = __Pyx_PyList_GET_SIZE(__pyx_t_4);
              #if !CYTHON_ASSUME_SAFE_SIZE
              if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 523, __pyx_L25_error)
              #endif
              if (__pyx_t_12 >= __pyx_temp) break;
            }
            __pyx_t_1 = __Pyx_PyList_GetItemRef(__pyx_t_4, __pyx_t_12);
            ++__pyx_t_12;
          } else {
            {
              Py_ssize_t __pyx_temp = __Pyx_PyTuple_GET_SIZE(__pyx_t_4);
              #if !CYTHON_ASSUME_SAFE_SIZE
              if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 523, __pyx_L25_error)
              #endif
              if (__pyx_t_12 >= __pyx_temp) break;
            }
            #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
            __pyx_t_1 = __Pyx_NewRef(PyTuple_GET_ITEM(__pyx_t_4, __pyx_t_12));
            #else
            __pyx_t_1 = __Pyx_PySequence_ITEM(__pyx_t_4, __pyx_t_12);
            #endif
            ++__pyx_t_12;
          }
          if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 523, __pyx_L25_error)
        } else {
          __pyx_t_1 = __pyx_t_13(__pyx_t_4);
          if (unlikely(!__pyx_t_1)) {
            PyObject* exc_type = PyErr_Occurred();
            if (exc_type) {
              if (unlikely(!__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) __PYX_ERR(0, 523, __pyx_L25_error)
              PyErr_Clear();
            }
            break;
          }
        }
        __Pyx_GOTREF(__pyx_t_1);
        if ((likely(PyTuple_CheckExact(__pyx_t_1))) || (PyList_CheckExact(__pyx_t_1))) {
          PyObject* sequence = __pyx_t_1;
          Py_ssize_t size = __Pyx_PySequence_SIZE(sequence);
          if (unlikely(size != 2)) {
            if (size > 2) __Pyx_RaiseTooManyValuesError(2);
            else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
            __PYX_ERR(0, 523, __pyx_L25_error)
          }
          #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
          if (likely(PyTuple_CheckExact(sequence))) {
            __pyx_t_14 = PyTuple_GET_ITEM(sequence, 0);
            __Pyx_INCREF(__pyx_t_14);
            __pyx_t_15 = PyTuple_GET_ITEM(sequence, 1);
            __Pyx_INCREF(__pyx_t_15);
          } else {
            __pyx_t_14 = __Pyx_PyList_GetItemRef(sequence, 0);
            if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 523, __pyx_L25_error)
            __Pyx_XGOTREF(__pyx_t_14);
            __pyx_t_15 = __Pyx_PyList_GetItemRef(sequence, 1);
            if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 523, __pyx_L25_error)
            __Pyx_XGOTREF(__pyx_t_15);
          }
          #else
          __pyx_t_14 = __Pyx_PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 523, __pyx_L25_error)
          __Pyx_GOTREF(__pyx_t_14);
          __pyx_t_15 = __Pyx_PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 523, __pyx_L25_error)
          __Pyx_GOTREF(__pyx_t_15);
          #endif
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        } else {
          Py_ssize_t index = -1;
          __pyx_t_16 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 523, __pyx_L25_error)
          __Pyx_GOTREF(__pyx_t_16);
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __pyx_t_17 = (CYTHON_COMPILING_IN_LIMITED_API) ? PyIter_Next : __Pyx_PyObject_GetIterNextFunc(__pyx_t_16);
          index = 0; __pyx_t_14 = __pyx_t_17(__pyx_t_16); if (unlikely(!__pyx_t_14)) goto __pyx_L28_unpacking_failed;
          __Pyx_GOTREF(__pyx_t_14);
          index = 1; __pyx_t_15 = __pyx_t_17(__pyx_t_16); if (unlikely(!__pyx_t_15)) goto __pyx_L28_unpacking_failed;
          __Pyx_GOTREF(__pyx_t_15);
          if (__Pyx_IternextUnpackEndCheck(__pyx_t_17(__pyx_t_16), 2) < 0) __PYX_ERR(0, 523, __pyx_L25_error)
          __pyx_t_17 = NULL;
          __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0;
          goto __pyx_L29_unpacking_done;
          __pyx_L28_unpacking_failed:;
          __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0;
          __pyx_t_17 = NULL;
          if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
          __PYX_ERR(0, 523, __pyx_L25_error)
          __pyx_L29_unpacking_done:;
        }
        __Pyx_XDECREF_SET(__pyx_8genexpr1__pyx_v_key, __pyx_t_14);
        __pyx_t_14 = 0;
        __Pyx_XDECREF_SET(__pyx_8genexpr1__pyx_v_value, __pyx_t_15);
        __pyx_t_15 = 0;
        __Pyx_INCREF(__pyx_t_5);
        __Pyx_XDECREF_SET(__pyx_8genexpr1__pyx_v_i, __pyx_t_5);
        __pyx_t_1 = __Pyx_PyLong_AddObjC(__pyx_t_5, __pyx_mstate_global->__pyx_int_1, 1, 0, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 523, __pyx_L25_error)
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_5);
        __pyx_t_5 = __pyx_t_1;
        __pyx_t_1 = 0;
        __pyx_t_2 = (__pyx_8genexpr1__pyx_v_value == Py_None);
        if (__pyx_t_2) {
          if (unlikely(__Pyx_ListComp_Append(__pyx_t_3, (PyObject*)__pyx_8genexpr1__pyx_v_i))) __PYX_ERR(0, 523, __pyx_L25_error)
        }
      }
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_XDECREF(__pyx_8genexpr1__pyx_v_i); __pyx_8genexpr1__pyx_v_i = 0;
      __Pyx_XDECREF(__pyx_8genexpr1__pyx_v_key); __pyx_8genexpr1__pyx_v_key = 0;
      __Pyx_XDECREF(__pyx_8genexpr1__pyx_v_value); __pyx_8genexpr1__pyx_v_value = 0;
      goto __pyx_L32_exit_scope;
      __pyx_L25_error:;
      __Pyx_XDECREF(__pyx_8genexpr1__pyx_v_i); __pyx_8genexpr1__pyx_v_i = 0;
      __Pyx_XDECREF(__pyx_8genexpr1__pyx_v_key); __pyx_8genexpr1__pyx_v_key = 0;
      __Pyx_XDECREF(__pyx_8genexpr1__pyx_v_value); __pyx_8genexpr1__pyx_v_value = 0;
      goto __pyx_L1_error;
      __pyx_L32_exit_scope:;
    } /* exit inner scope */
    __pyx_v_null_args = ((PyObject*)__pyx_t_3);
    __pyx_t_3 = 0;

    /* "unicorn_binance_rest_api/manager.py":524
 *             # Remove any arguments with values of None.
 *             null_args = [i for i, (key, value) in enumerate(kwargs['data']) if value is None]
 *             for i in reversed(null_args):             # <<<<<<<<<<<<<<
 *                 del kwargs['data'][i]
 * 
*/
    __pyx_t_3 = __pyx_v_null_args; __Pyx_INCREF(__pyx_t_3);
    __pyx_t_12 = __Pyx_PyList_GET_SIZE(__pyx_t_3);
    #if !CYTHON_ASSUME_SAFE_SIZE
    if (unlikely((__pyx_t_12 < 0))) __PYX_ERR(0, 524, __pyx_L1_error)
    #endif
    --__pyx_t_12;
    for (;;) {
      if (__pyx_t_12 < 0) break;
      {
        Py_ssize_t __pyx_temp = __Pyx_PyList_GET_SIZE(__pyx_t_3);
        #if !CYTHON_ASSUME_SAFE_SIZE
        if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 524, __pyx_L1_error)
        #endif
        if (__pyx_t_12 >= __pyx_temp) break;
      }
      __pyx_t_5 = __Pyx_PyList_GetItemRef(__pyx_t_3, __pyx_t_12);
      --__pyx_t_12;
      if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 524, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_XDECREF_SET(__pyx_v_i, __pyx_t_5);
      __pyx_t_5 = 0;

      /* "unicorn_binance_rest_api/manager.py":525
 *             null_args = [i for i, (key, value) in enumerate(kwargs['data']) if value is None]
 *             for i in reversed(null_args):
 *                 del kwargs['data'][i]             # <<<<<<<<<<<<<<
 * 
 *         # if get request assign data array to params value for requests lib
*/
      __pyx_t_5 = __Pyx_PyDict_GetItem(__pyx_v_kwargs, __pyx_mstate_global->__pyx_n_u_data); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 525, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_5);
      if (unlikely((PyObject_DelItem(__pyx_t_5, __pyx_v_i) < 0))) __PYX_ERR(0, 525, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;

      /* "unicorn_binance_rest_api/manager.py":524
 *             # Remove any arguments with values of None.
 *             null_args = [i for i, (key, value) in enumerate(kwargs['data']) if value is None]
 *             for i in reversed(null_args):             # <<<<<<<<<<<<<<
 *                 del kwargs['data'][i]
 * 
*/
    }
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;

    /* "unicorn_binance_rest_api/manager.py":519
 * 
 *         # sort get and post params to match signature order
 *         if data:             # <<<<<<<<<<<<<<
 *             # sort post params
 *             kwargs['data'] = self._order_params(kwargs['data'])
*/
  }

  /* "unicorn_binance_rest_api/manager.py":528
 * 
 *         # if get request assign data array to params value for requests lib
 *         if data and (method == 'get' or force_params):             # <<<<<<<<<<<<<<
 *             kwargs['params'] = '&'.join('%s=%s' % (data[0], data[1]) for data in kwargs['data'])
 *             del kwargs['data']
*/
  __pyx_t_11 = __Pyx_PyObject_IsTrue(__pyx_v_data); if (unlikely((__pyx_t_11 < 0))) __PYX_ERR(0, 528, __pyx_L1_error)
  if (__pyx_t_11) {
  } else {
    __pyx_t_2 = __pyx_t_11;
    goto __pyx_L37_bool_binop_done;
  }
  __pyx_t_11 = (__Pyx_PyUnicode_Equals(__pyx_v_method, __pyx_mstate_global->__pyx_n_u_get, Py_EQ)); if (unlikely((__pyx_t_11 < 0))) __PYX_ERR(0, 528, __pyx_L1_error)
  if (!__pyx_t_11) {
  } else {
    __pyx_t_2 = __pyx_t_11;
    goto __pyx_L37_bool_binop_done;
  }
  __pyx_t_11 = __Pyx_PyObject_IsTrue(__pyx_v_force_params); if (unlikely((__pyx_t_11 < 0))) __PYX_ERR(0, 528, __pyx_L1_error)
  __pyx_t_2 = __pyx_t_11;
  __pyx_L37_bool_binop_done:;
  if (__pyx_t_2) {

    /* "unicorn_binance_rest_api/manager.py":529
 *         # if get request assign data array to params value for requests lib
 *         if data and (method == 'get' or force_params):
 *             kwargs['params'] = '&'.join('%s=%s' % (data[0], data[1]) for data in kwargs['data'])             # <<<<<<<<<<<<<<
 *             del kwargs['data']
 * 
*/
    __pyx_t_3 = __Pyx_PyDict_GetItem(__pyx_v_kwargs, __pyx_mstate_global->__pyx_n_u_data); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 529, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_5 = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_8_request_genexpr(NULL, __pyx_t_3); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 529, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_t_3 = __Pyx_Generator_GetInlinedResult(__pyx_t_5); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 529, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    __pyx_t_5 = PyUnicode_Join(__pyx_mstate_global->__pyx_kp_u__8, __pyx_t_3); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 529, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    if (unlikely((PyDict_SetItem(__pyx_v_kwargs, __pyx_mstate_global->__pyx_n_u_params, __pyx_t_5) < 0))) __PYX_ERR(0, 529, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;

    /* "unicorn_binance_rest_api/manager.py":530
 *         if data and (method == 'get' or force_params):
 *             kwargs['params'] = '&'.join('%s=%s' % (data[0], data[1]) for data in kwargs['data'])
 *             del kwargs['data']             # <<<<<<<<<<<<<<
 * 
 *         if self.socks5_proxy_address is not None and self.socks5_proxy_port is not None:
*/
    if (unlikely((PyDict_DelItem(__pyx_v_kwargs, __pyx_mstate_global->__pyx_n_u_data) < 0))) __PYX_ERR(0, 530, __pyx_L1_error)

    /* "unicorn_binance_rest_api/manager.py":528
 * 
 *         # if get request assign data array to params value for requests lib
 *         if data and (method == 'get' or force_params):             # <<<<<<<<<<<<<<
 *             kwargs['params'] = '&'.join('%s=%s' % (data[0], data[1]) for data in kwargs['data'])
 *             del kwargs['data']
*/
  }

  /* "unicorn_binance_rest_api/manager.py":532
 *             del kwargs['data']
 * 
 *         if self.socks5_proxy_address is not None and self.socks5_proxy_port is not None:             # <<<<<<<<<<<<<<
 *             self.response = getattr(self.session, method)(uri,
 *                                                           proxies=self.request_socks5_proxies,
*/
  __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_socks5_proxy_address); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 532, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __pyx_t_11 = (__pyx_t_5 != Py_None);
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  if (__pyx_t_11) {
  } else {
    __pyx_t_2 = __pyx_t_11;
    goto __pyx_L41_bool_binop_done;
  }
  __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_socks5_proxy_port); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 532, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __pyx_t_11 = (__pyx_t_5 != Py_None);
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  __pyx_t_2 = __pyx_t_11;
  __pyx_L41_bool_binop_done:;
  if (__pyx_t_2) {

    /* "unicorn_binance_rest_api/manager.py":533
 * 
 *         if self.socks5_proxy_address is not None and self.socks5_proxy_port is not None:
 *             self.response = getattr(self.session, method)(uri,             # <<<<<<<<<<<<<<
 *                                                           proxies=self.request_socks5_proxies,
 *                                                           verify=self.socks5_proxy_ssl_verification,
*/
    __pyx_t_3 = NULL;
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_session); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 533, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_1 = __Pyx_GetAttr(__pyx_t_4, __pyx_v_method); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 533, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

    /* "unicorn_binance_rest_api/manager.py":534
 *         if self.socks5_proxy_address is not None and self.socks5_proxy_port is not None:
 *             self.response = getattr(self.session, method)(uri,
 *                                                           proxies=self.request_socks5_proxies,             # <<<<<<<<<<<<<<
 *                                                           verify=self.socks5_proxy_ssl_verification,
 *                                                           **kwargs)
*/
    __pyx_t_15 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 534, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_15);
    __pyx_t_14 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_socks5_proxies); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 534, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_14);
    if (PyDict_SetItem(__pyx_t_15, __pyx_mstate_global->__pyx_n_u_proxies, __pyx_t_14) < 0) __PYX_ERR(0, 534, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;

    /* "unicorn_binance_rest_api/manager.py":535
 *             self.response = getattr(self.session, method)(uri,
 *                                                           proxies=self.request_socks5_proxies,
 *                                                           verify=self.socks5_proxy_ssl_verification,             # <<<<<<<<<<<<<<
 *                                                           **kwargs)
 *         else:
*/
    __pyx_t_14 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_socks5_proxy_ssl_verification); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 535, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_14);
    if (PyDict_SetItem(__pyx_t_15, __pyx_mstate_global->__pyx_n_u_verify, __pyx_t_14) < 0) __PYX_ERR(0, 534, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
    __pyx_t_4 = __pyx_t_15;
    __pyx_t_15 = 0;

    /* "unicorn_binance_rest_api/manager.py":536
 *                                                           proxies=self.request_socks5_proxies,
 *                                                           verify=self.socks5_proxy_ssl_verification,
 *                                                           **kwargs)             # <<<<<<<<<<<<<<
 *         else:
 *             self.response = getattr(self.session, method)(uri, **kwargs)
*/
    if (__Pyx_MergeKeywords(__pyx_t_4, __pyx_v_kwargs) < 0) __PYX_ERR(0, 536, __pyx_L1_error)
    __pyx_t_6 = 1;
    #if CYTHON_UNPACK_METHODS
    if (unlikely(PyMethod_Check(__pyx_t_1))) {
      __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_1);
      assert(__pyx_t_3);
      PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_1);
      __Pyx_INCREF(__pyx_t_3);
      __Pyx_INCREF(__pyx__function);
      __Pyx_DECREF_SET(__pyx_t_1, __pyx__function);
      __pyx_t_6 = 0;
    }
    #endif
    {
      PyObject *__pyx_callargs[2] = {__pyx_t_3, __pyx_v_uri};
      __pyx_t_5 = __Pyx_PyObject_FastCallDict(__pyx_t_1, __pyx_callargs+__pyx_t_6, (2-__pyx_t_6) | (__pyx_t_6*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET), __pyx_t_4);
      __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 533, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_5);
    }

    /* "unicorn_binance_rest_api/manager.py":533
 * 
 *         if self.socks5_proxy_address is not None and self.socks5_proxy_port is not None:
 *             self.response = getattr(self.session, method)(uri,             # <<<<<<<<<<<<<<
 *                                                           proxies=self.request_socks5_proxies,
 *                                                           verify=self.socks5_proxy_ssl_verification,
*/
    if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_response, __pyx_t_5) < 0) __PYX_ERR(0, 533, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;

    /* "unicorn_binance_rest_api/manager.py":532
 *             del kwargs['data']
 * 
 *         if self.socks5_proxy_address is not None and self.socks5_proxy_port is not None:             # <<<<<<<<<<<<<<
 *             self.response = getattr(self.session, method)(uri,
 *                                                           proxies=self.request_socks5_proxies,
*/
    goto __pyx_L40;
  }

  /* "unicorn_binance_rest_api/manager.py":538
 *                                                           **kwargs)
 *         else:
 *             self.response = getattr(self.session, method)(uri, **kwargs)             # <<<<<<<<<<<<<<
 * 
 *         return self._handle_response(throw_exception=throw_exception)
*/
  /*else*/ {
    __pyx_t_1 = NULL;
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_session); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 538, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_3 = __Pyx_GetAttr(__pyx_t_4, __pyx_v_method); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 538, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_4 = PyDict_Copy(__pyx_v_kwargs); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 538, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_6 = 1;
    #if CYTHON_UNPACK_METHODS
    if (unlikely(PyMethod_Check(__pyx_t_3))) {
      __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_3);
      assert(__pyx_t_1);
      PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_3);
      __Pyx_INCREF(__pyx_t_1);
      __Pyx_INCREF(__pyx__function);
      __Pyx_DECREF_SET(__pyx_t_3, __pyx__function);
      __pyx_t_6 = 0;
    }
    #endif
    {
      PyObject *__pyx_callargs[2] = {__pyx_t_1, __pyx_v_uri};
      __pyx_t_5 = __Pyx_PyObject_FastCallDict(__pyx_t_3, __pyx_callargs+__pyx_t_6, (2-__pyx_t_6) | (__pyx_t_6*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET), __pyx_t_4);
      __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 538, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_5);
    }
    if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_response, __pyx_t_5) < 0) __PYX_ERR(0, 538, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  }
  __pyx_L40:;

  /* "unicorn_binance_rest_api/manager.py":540
 *             self.response = getattr(self.session, method)(uri, **kwargs)
 * 
 *         return self._handle_response(throw_exception=throw_exception)             # <<<<<<<<<<<<<<
 * 
 *     def _request_api(self, method, path, signed=False, version=PUBLIC_API_VERSION, throw_exception=True, **kwargs):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_3 = __pyx_v_self;
  __Pyx_INCREF(__pyx_t_3);
  __pyx_t_6 = 0;
  {
    PyObject *__pyx_callargs[2 + ((CYTHON_VECTORCALL) ? 1 : 0)] = {__pyx_t_3, NULL};
    __pyx_t_4 = __Pyx_MakeVectorcallBuilderKwds(1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 540, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_throw_exception, __pyx_v_throw_exception, __pyx_t_4, __pyx_callargs+1, 0) < 0) __PYX_ERR(0, 540, __pyx_L1_error)
    __pyx_t_5 = __Pyx_Object_VectorcallMethod_CallFromBuilder(__pyx_mstate_global->__pyx_n_u_handle_response, __pyx_callargs+__pyx_t_6, (1-__pyx_t_6) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET), __pyx_t_4);
    __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 540, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
  }
  __pyx_r = __pyx_t_5;
  __pyx_t_5 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":473
 *         return params
 * 
 *     def _request(self, method, uri, signed, force_params=False, throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         if self.sigterm is True:
 *             info = f"`BinanceRestApiManager()` instance has already been stopped and cannot be used."
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_14);
  __Pyx_XDECREF(__pyx_t_15);
  __Pyx_XDECREF(__pyx_t_16);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager._request", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_info);
  __Pyx_XDECREF(__pyx_v_api_key);
  __Pyx_XDECREF(__pyx_v_api_secret);
  __Pyx_XDECREF(__pyx_v_data);
  __Pyx_XDECREF(__pyx_v_null_args);
  __Pyx_XDECREF(__pyx_v_i);
  __Pyx_XDECREF(__pyx_8genexpr1__pyx_v_i);
  __Pyx_XDECREF(__pyx_8genexpr1__pyx_v_key);
  __Pyx_XDECREF(__pyx_8genexpr1__pyx_v_value);
  __Pyx_XDECREF(__pyx_gb_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_8_request_2generator2);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":542
 *         return self._handle_response(throw_exception=throw_exception)
 * 
 *     def _request_api(self, method, path, signed=False, version=PUBLIC_API_VERSION, throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         uri = self._create_api_uri(path, signed, version)
 * 
*/

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_4__defaults__(CYTHON_UNUSED PyObject *__pyx_self) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("__defaults__", 0);
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = PyTuple_New(3); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 542, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_INCREF(((PyObject*)Py_False));
  __Pyx_GIVEREF(((PyObject*)Py_False));
  if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject*)Py_False)) != (0)) __PYX_ERR(0, 542, __pyx_L1_error);
  __Pyx_INCREF(__Pyx_CyFunction_Defaults(struct __pyx_defaults, __pyx_self)->arg0);
  __Pyx_GIVEREF(__Pyx_CyFunction_Defaults(struct __pyx_defaults, __pyx_self)->arg0);
  if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 1, __Pyx_CyFunction_Defaults(struct __pyx_defaults, __pyx_self)->arg0) != (0)) __PYX_ERR(0, 542, __pyx_L1_error);
  __Pyx_INCREF(((PyObject*)Py_True));
  __Pyx_GIVEREF(((PyObject*)Py_True));
  if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 2, ((PyObject*)Py_True)) != (0)) __PYX_ERR(0, 542, __pyx_L1_error);
  __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 542, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_GIVEREF(__pyx_t_1);
  if (__Pyx_PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_1) != (0)) __PYX_ERR(0, 542, __pyx_L1_error);
  __Pyx_INCREF(Py_None);
  __Pyx_GIVEREF(Py_None);
  if (__Pyx_PyTuple_SET_ITEM(__pyx_t_2, 1, Py_None) != (0)) __PYX_ERR(0, 542, __pyx_L1_error);
  __pyx_t_1 = 0;
  __pyx_r = __pyx_t_2;
  __pyx_t_2 = 0;
  goto __pyx_L0;

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.__defaults__", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_29_request_api(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_29_request_api = {"_request_api", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_29_request_api, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_29_request_api(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_method = 0;
  PyObject *__pyx_v_path = 0;
  PyObject *__pyx_v_signed = 0;
  PyObject *__pyx_v_version = 0;
  PyObject *__pyx_v_throw_exception = 0;
  PyObject *__pyx_v_kwargs = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[6] = {0,0,0,0,0,0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("_request_api (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_kwargs = PyDict_New(); if (unlikely(!__pyx_v_kwargs)) return NULL;
  __Pyx_GOTREF(__pyx_v_kwargs);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,&__pyx_mstate_global->__pyx_n_u_method,&__pyx_mstate_global->__pyx_n_u_path,&__pyx_mstate_global->__pyx_n_u_signed,&__pyx_mstate_global->__pyx_n_u_version_2,&__pyx_mstate_global->__pyx_n_u_throw_exception,0};
    struct __pyx_defaults *__pyx_dynamic_args = __Pyx_CyFunction_Defaults(struct __pyx_defaults, __pyx_self);
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 542, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  6:
        values[5] = __Pyx_ArgRef_FASTCALL(__pyx_args, 5);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 542, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  5:
        values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 542, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  4:
        values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 542, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  3:
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 542, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 542, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 542, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_kwargs, values, kwd_pos_args, __pyx_kwds_len, "_request_api", 1) < 0) __PYX_ERR(0, 542, __pyx_L3_error)
      if (!values[3]) values[3] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_False)));
      if (!values[4]) values[4] = __Pyx_NewRef(__pyx_dynamic_args->arg0);
      if (!values[5]) values[5] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_True)));
      for (Py_ssize_t i = __pyx_nargs; i < 3; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("_request_api", 0, 3, 6, i); __PYX_ERR(0, 542, __pyx_L3_error) }
      }
    } else {
      switch (__pyx_nargs) {
        case  6:
        values[5] = __Pyx_ArgRef_FASTCALL(__pyx_args, 5);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 542, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  5:
        values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 542, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  4:
        values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 542, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  3:
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 542, __pyx_L3_error)
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 542, __pyx_L3_error)
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 542, __pyx_L3_error)
        break;
        default: goto __pyx_L5_argtuple_error;
      }
      if (!values[3]) values[3] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_False)));
      if (!values[4]) values[4] = __Pyx_NewRef(__pyx_dynamic_args->arg0);
      if (!values[5]) values[5] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_True)));
    }
    __pyx_v_self = values[0];
    __pyx_v_method = values[1];
    __pyx_v_path = values[2];
    __pyx_v_signed = values[3];
    __pyx_v_version = values[4];
    __pyx_v_throw_exception = values[5];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("_request_api", 0, 3, 6, __pyx_nargs); __PYX_ERR(0, 542, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_kwargs); __pyx_v_kwargs = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager._request_api", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_28_request_api(__pyx_self, __pyx_v_self, __pyx_v_method, __pyx_v_path, __pyx_v_signed, __pyx_v_version, __pyx_v_throw_exception, __pyx_v_kwargs);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_kwargs);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_28_request_api(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_method, PyObject *__pyx_v_path, PyObject *__pyx_v_signed, PyObject *__pyx_v_version, PyObject *__pyx_v_throw_exception, PyObject *__pyx_v_kwargs) {
  PyObject *__pyx_v_uri = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  size_t __pyx_t_3;
  PyObject *__pyx_t_4 = NULL;
  PyObject *__pyx_t_5 = NULL;
  PyObject *__pyx_t_6 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("_request_api", 0);

  /* "unicorn_binance_rest_api/manager.py":543
 * 
 *     def _request_api(self, method, path, signed=False, version=PUBLIC_API_VERSION, throw_exception=True, **kwargs):
 *         uri = self._create_api_uri(path, signed, version)             # <<<<<<<<<<<<<<
 * 
 *         return self._request(method, uri, signed, throw_exception=throw_exception, **kwargs)
*/
  __pyx_t_2 = __pyx_v_self;
  __Pyx_INCREF(__pyx_t_2);
  __pyx_t_3 = 0;
  {
    PyObject *__pyx_callargs[4] = {__pyx_t_2, __pyx_v_path, __pyx_v_signed, __pyx_v_version};
    __pyx_t_1 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_create_api_uri, __pyx_callargs+__pyx_t_3, (4-__pyx_t_3) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 543, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
  }
  __pyx_v_uri = __pyx_t_1;
  __pyx_t_1 = 0;

  /* "unicorn_binance_rest_api/manager.py":545
 *         uri = self._create_api_uri(path, signed, version)
 * 
 *         return self._request(method, uri, signed, throw_exception=throw_exception, **kwargs)             # <<<<<<<<<<<<<<
 * 
 *     def _request_margin_api(self, method, path, signed=False,
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_2 = NULL;
  __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 545, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __pyx_t_6 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 545, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_6);
  if (PyDict_SetItem(__pyx_t_6, __pyx_mstate_global->__pyx_n_u_throw_exception, __pyx_v_throw_exception) < 0) __PYX_ERR(0, 545, __pyx_L1_error)
  __pyx_t_5 = __pyx_t_6;
  __pyx_t_6 = 0;
  if (__Pyx_MergeKeywords(__pyx_t_5, __pyx_v_kwargs) < 0) __PYX_ERR(0, 545, __pyx_L1_error)
  __pyx_t_3 = 1;
  #if CYTHON_UNPACK_METHODS
  if (likely(PyMethod_Check(__pyx_t_4))) {
    __pyx_t_2 = PyMethod_GET_SELF(__pyx_t_4);
    assert(__pyx_t_2);
    PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_4);
    __Pyx_INCREF(__pyx_t_2);
    __Pyx_INCREF(__pyx__function);
    __Pyx_DECREF_SET(__pyx_t_4, __pyx__function);
    __pyx_t_3 = 0;
  }
  #endif
  {
    PyObject *__pyx_callargs[4] = {__pyx_t_2, __pyx_v_method, __pyx_v_uri, __pyx_v_signed};
    __pyx_t_1 = __Pyx_PyObject_FastCallDict(__pyx_t_4, __pyx_callargs+__pyx_t_3, (4-__pyx_t_3) | (__pyx_t_3*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET), __pyx_t_5);
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 545, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
  }
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":542
 *         return self._handle_response(throw_exception=throw_exception)
 * 
 *     def _request_api(self, method, path, signed=False, version=PUBLIC_API_VERSION, throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         uri = self._create_api_uri(path, signed, version)
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager._request_api", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_uri);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":547
 *         return self._request(method, uri, signed, throw_exception=throw_exception, **kwargs)
 * 
 *     def _request_margin_api(self, method, path, signed=False,             # <<<<<<<<<<<<<<
 *                             version=MARGIN_API_VERSION, throw_exception=True, **kwargs):
 *         uri = self._create_margin_api_uri(path, version)
*/

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_6__defaults__(CYTHON_UNUSED PyObject *__pyx_self) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("__defaults__", 0);
  __Pyx_XDECREF(__pyx_r);

  /* "unicorn_binance_rest_api/manager.py":548
 * 
 *     def _request_margin_api(self, method, path, signed=False,
 *                             version=MARGIN_API_VERSION, throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         uri = self._create_margin_api_uri(path, version)
 * 
*/
  __pyx_t_1 = PyTuple_New(3); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 547, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_INCREF(((PyObject*)Py_False));
  __Pyx_GIVEREF(((PyObject*)Py_False));
  if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject*)Py_False)) != (0)) __PYX_ERR(0, 547, __pyx_L1_error);
  __Pyx_INCREF(__Pyx_CyFunction_Defaults(struct __pyx_defaults, __pyx_self)->arg0);
  __Pyx_GIVEREF(__Pyx_CyFunction_Defaults(struct __pyx_defaults, __pyx_self)->arg0);
  if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 1, __Pyx_CyFunction_Defaults(struct __pyx_defaults, __pyx_self)->arg0) != (0)) __PYX_ERR(0, 547, __pyx_L1_error);
  __Pyx_INCREF(((PyObject*)Py_True));
  __Pyx_GIVEREF(((PyObject*)Py_True));
  if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 2, ((PyObject*)Py_True)) != (0)) __PYX_ERR(0, 547, __pyx_L1_error);

  /* "unicorn_binance_rest_api/manager.py":547
 *         return self._request(method, uri, signed, throw_exception=throw_exception, **kwargs)
 * 
 *     def _request_margin_api(self, method, path, signed=False,             # <<<<<<<<<<<<<<
 *                             version=MARGIN_API_VERSION, throw_exception=True, **kwargs):
 *         uri = self._create_margin_api_uri(path, version)
*/
  __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 547, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_GIVEREF(__pyx_t_1);
  if (__Pyx_PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_1) != (0)) __PYX_ERR(0, 547, __pyx_L1_error);
  __Pyx_INCREF(Py_None);
  __Pyx_GIVEREF(Py_None);
  if (__Pyx_PyTuple_SET_ITEM(__pyx_t_2, 1, Py_None) != (0)) __PYX_ERR(0, 547, __pyx_L1_error);
  __pyx_t_1 = 0;
  __pyx_r = __pyx_t_2;
  __pyx_t_2 = 0;
  goto __pyx_L0;

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.__defaults__", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_31_request_margin_api(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_31_request_margin_api = {"_request_margin_api", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_31_request_margin_api, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_31_request_margin_api(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_method = 0;
  PyObject *__pyx_v_path = 0;
  PyObject *__pyx_v_signed = 0;
  PyObject *__pyx_v_version = 0;
  PyObject *__pyx_v_throw_exception = 0;
  PyObject *__pyx_v_kwargs = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[6] = {0,0,0,0,0,0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("_request_margin_api (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_kwargs = PyDict_New(); if (unlikely(!__pyx_v_kwargs)) return NULL;
  __Pyx_GOTREF(__pyx_v_kwargs);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,&__pyx_mstate_global->__pyx_n_u_method,&__pyx_mstate_global->__pyx_n_u_path,&__pyx_mstate_global->__pyx_n_u_signed,&__pyx_mstate_global->__pyx_n_u_version_2,&__pyx_mstate_global->__pyx_n_u_throw_exception,0};
    struct __pyx_defaults *__pyx_dynamic_args = __Pyx_CyFunction_Defaults(struct __pyx_defaults, __pyx_self);
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 547, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  6:
        values[5] = __Pyx_ArgRef_FASTCALL(__pyx_args, 5);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 547, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  5:
        values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 547, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  4:
        values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 547, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  3:
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 547, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 547, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 547, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_kwargs, values, kwd_pos_args, __pyx_kwds_len, "_request_margin_api", 1) < 0) __PYX_ERR(0, 547, __pyx_L3_error)
      if (!values[3]) values[3] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_False)));
      if (!values[4]) values[4] = __Pyx_NewRef(__pyx_dynamic_args->arg0);
      if (!values[5]) values[5] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_True)));
      for (Py_ssize_t i = __pyx_nargs; i < 3; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("_request_margin_api", 0, 3, 6, i); __PYX_ERR(0, 547, __pyx_L3_error) }
      }
    } else {
      switch (__pyx_nargs) {
        case  6:
        values[5] = __Pyx_ArgRef_FASTCALL(__pyx_args, 5);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 547, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  5:
        values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 547, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  4:
        values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 547, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  3:
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 547, __pyx_L3_error)
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 547, __pyx_L3_error)
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 547, __pyx_L3_error)
        break;
        default: goto __pyx_L5_argtuple_error;
      }
      if (!values[3]) values[3] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_False)));
      if (!values[4]) values[4] = __Pyx_NewRef(__pyx_dynamic_args->arg0);
      if (!values[5]) values[5] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_True)));
    }
    __pyx_v_self = values[0];
    __pyx_v_method = values[1];
    __pyx_v_path = values[2];
    __pyx_v_signed = values[3];
    __pyx_v_version = values[4];
    __pyx_v_throw_exception = values[5];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("_request_margin_api", 0, 3, 6, __pyx_nargs); __PYX_ERR(0, 547, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_kwargs); __pyx_v_kwargs = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager._request_margin_api", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_30_request_margin_api(__pyx_self, __pyx_v_self, __pyx_v_method, __pyx_v_path, __pyx_v_signed, __pyx_v_version, __pyx_v_throw_exception, __pyx_v_kwargs);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_kwargs);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_30_request_margin_api(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_method, PyObject *__pyx_v_path, PyObject *__pyx_v_signed, PyObject *__pyx_v_version, PyObject *__pyx_v_throw_exception, PyObject *__pyx_v_kwargs) {
  PyObject *__pyx_v_uri = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  size_t __pyx_t_3;
  PyObject *__pyx_t_4 = NULL;
  PyObject *__pyx_t_5 = NULL;
  PyObject *__pyx_t_6 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("_request_margin_api", 0);

  /* "unicorn_binance_rest_api/manager.py":549
 *     def _request_margin_api(self, method, path, signed=False,
 *                             version=MARGIN_API_VERSION, throw_exception=True, **kwargs):
 *         uri = self._create_margin_api_uri(path, version)             # <<<<<<<<<<<<<<
 * 
 *         return self._request(method, uri, signed, throw_exception=throw_exception, **kwargs)
*/
  __pyx_t_2 = __pyx_v_self;
  __Pyx_INCREF(__pyx_t_2);
  __pyx_t_3 = 0;
  {
    PyObject *__pyx_callargs[3] = {__pyx_t_2, __pyx_v_path, __pyx_v_version};
    __pyx_t_1 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_create_margin_api_uri, __pyx_callargs+__pyx_t_3, (3-__pyx_t_3) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 549, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
  }
  __pyx_v_uri = __pyx_t_1;
  __pyx_t_1 = 0;

  /* "unicorn_binance_rest_api/manager.py":551
 *         uri = self._create_margin_api_uri(path, version)
 * 
 *         return self._request(method, uri, signed, throw_exception=throw_exception, **kwargs)             # <<<<<<<<<<<<<<
 * 
 *     def _request_website(self, method, path, signed=False, throw_exception=True, **kwargs):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_2 = NULL;
  __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 551, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __pyx_t_6 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 551, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_6);
  if (PyDict_SetItem(__pyx_t_6, __pyx_mstate_global->__pyx_n_u_throw_exception, __pyx_v_throw_exception) < 0) __PYX_ERR(0, 551, __pyx_L1_error)
  __pyx_t_5 = __pyx_t_6;
  __pyx_t_6 = 0;
  if (__Pyx_MergeKeywords(__pyx_t_5, __pyx_v_kwargs) < 0) __PYX_ERR(0, 551, __pyx_L1_error)
  __pyx_t_3 = 1;
  #if CYTHON_UNPACK_METHODS
  if (likely(PyMethod_Check(__pyx_t_4))) {
    __pyx_t_2 = PyMethod_GET_SELF(__pyx_t_4);
    assert(__pyx_t_2);
    PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_4);
    __Pyx_INCREF(__pyx_t_2);
    __Pyx_INCREF(__pyx__function);
    __Pyx_DECREF_SET(__pyx_t_4, __pyx__function);
    __pyx_t_3 = 0;
  }
  #endif
  {
    PyObject *__pyx_callargs[4] = {__pyx_t_2, __pyx_v_method, __pyx_v_uri, __pyx_v_signed};
    __pyx_t_1 = __Pyx_PyObject_FastCallDict(__pyx_t_4, __pyx_callargs+__pyx_t_3, (4-__pyx_t_3) | (__pyx_t_3*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET), __pyx_t_5);
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 551, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
  }
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":547
 *         return self._request(method, uri, signed, throw_exception=throw_exception, **kwargs)
 * 
 *     def _request_margin_api(self, method, path, signed=False,             # <<<<<<<<<<<<<<
 *                             version=MARGIN_API_VERSION, throw_exception=True, **kwargs):
 *         uri = self._create_margin_api_uri(path, version)
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager._request_margin_api", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_uri);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":553
 *         return self._request(method, uri, signed, throw_exception=throw_exception, **kwargs)
 * 
 *     def _request_website(self, method, path, signed=False, throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         uri = self._create_website_uri(path)
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_33_request_website(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_33_request_website = {"_request_website", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_33_request_website, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_33_request_website(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_method = 0;
  PyObject *__pyx_v_path = 0;
  PyObject *__pyx_v_signed = 0;
  PyObject *__pyx_v_throw_exception = 0;
  PyObject *__pyx_v_kwargs = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[5] = {0,0,0,0,0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("_request_website (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_kwargs = PyDict_New(); if (unlikely(!__pyx_v_kwargs)) return NULL;
  __Pyx_GOTREF(__pyx_v_kwargs);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,&__pyx_mstate_global->__pyx_n_u_method,&__pyx_mstate_global->__pyx_n_u_path,&__pyx_mstate_global->__pyx_n_u_signed,&__pyx_mstate_global->__pyx_n_u_throw_exception,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 553, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  5:
        values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 553, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  4:
        values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 553, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  3:
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 553, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 553, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 553, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_kwargs, values, kwd_pos_args, __pyx_kwds_len, "_request_website", 1) < 0) __PYX_ERR(0, 553, __pyx_L3_error)
      if (!values[3]) values[3] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_False)));
      if (!values[4]) values[4] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_True)));
      for (Py_ssize_t i = __pyx_nargs; i < 3; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("_request_website", 0, 3, 5, i); __PYX_ERR(0, 553, __pyx_L3_error) }
      }
    } else {
      switch (__pyx_nargs) {
        case  5:
        values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 553, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  4:
        values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 553, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  3:
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 553, __pyx_L3_error)
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 553, __pyx_L3_error)
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 553, __pyx_L3_error)
        break;
        default: goto __pyx_L5_argtuple_error;
      }
      if (!values[3]) values[3] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_False)));
      if (!values[4]) values[4] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_True)));
    }
    __pyx_v_self = values[0];
    __pyx_v_method = values[1];
    __pyx_v_path = values[2];
    __pyx_v_signed = values[3];
    __pyx_v_throw_exception = values[4];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("_request_website", 0, 3, 5, __pyx_nargs); __PYX_ERR(0, 553, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_kwargs); __pyx_v_kwargs = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager._request_website", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_32_request_website(__pyx_self, __pyx_v_self, __pyx_v_method, __pyx_v_path, __pyx_v_signed, __pyx_v_throw_exception, __pyx_v_kwargs);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_kwargs);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_32_request_website(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_method, PyObject *__pyx_v_path, PyObject *__pyx_v_signed, PyObject *__pyx_v_throw_exception, PyObject *__pyx_v_kwargs) {
  PyObject *__pyx_v_uri = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  size_t __pyx_t_3;
  PyObject *__pyx_t_4 = NULL;
  PyObject *__pyx_t_5 = NULL;
  PyObject *__pyx_t_6 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("_request_website", 0);

  /* "unicorn_binance_rest_api/manager.py":554
 * 
 *     def _request_website(self, method, path, signed=False, throw_exception=True, **kwargs):
 *         uri = self._create_website_uri(path)             # <<<<<<<<<<<<<<
 * 
 *         return self._request(method, uri, signed, throw_exception=throw_exception, **kwargs)
*/
  __pyx_t_2 = __pyx_v_self;
  __Pyx_INCREF(__pyx_t_2);
  __pyx_t_3 = 0;
  {
    PyObject *__pyx_callargs[2] = {__pyx_t_2, __pyx_v_path};
    __pyx_t_1 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_create_website_uri, __pyx_callargs+__pyx_t_3, (2-__pyx_t_3) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 554, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
  }
  __pyx_v_uri = __pyx_t_1;
  __pyx_t_1 = 0;

  /* "unicorn_binance_rest_api/manager.py":556
 *         uri = self._create_website_uri(path)
 * 
 *         return self._request(method, uri, signed, throw_exception=throw_exception, **kwargs)             # <<<<<<<<<<<<<<
 * 
 *     def _request_futures_api(self, method, path, signed=False, version=1, throw_exception=True, **kwargs):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_2 = NULL;
  __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 556, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __pyx_t_6 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 556, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_6);
  if (PyDict_SetItem(__pyx_t_6, __pyx_mstate_global->__pyx_n_u_throw_exception, __pyx_v_throw_exception) < 0) __PYX_ERR(0, 556, __pyx_L1_error)
  __pyx_t_5 = __pyx_t_6;
  __pyx_t_6 = 0;
  if (__Pyx_MergeKeywords(__pyx_t_5, __pyx_v_kwargs) < 0) __PYX_ERR(0, 556, __pyx_L1_error)
  __pyx_t_3 = 1;
  #if CYTHON_UNPACK_METHODS
  if (likely(PyMethod_Check(__pyx_t_4))) {
    __pyx_t_2 = PyMethod_GET_SELF(__pyx_t_4);
    assert(__pyx_t_2);
    PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_4);
    __Pyx_INCREF(__pyx_t_2);
    __Pyx_INCREF(__pyx__function);
    __Pyx_DECREF_SET(__pyx_t_4, __pyx__function);
    __pyx_t_3 = 0;
  }
  #endif
  {
    PyObject *__pyx_callargs[4] = {__pyx_t_2, __pyx_v_method, __pyx_v_uri, __pyx_v_signed};
    __pyx_t_1 = __Pyx_PyObject_FastCallDict(__pyx_t_4, __pyx_callargs+__pyx_t_3, (4-__pyx_t_3) | (__pyx_t_3*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET), __pyx_t_5);
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 556, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
  }
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":553
 *         return self._request(method, uri, signed, throw_exception=throw_exception, **kwargs)
 * 
 *     def _request_website(self, method, path, signed=False, throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         uri = self._create_website_uri(path)
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager._request_website", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_uri);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":558
 *         return self._request(method, uri, signed, throw_exception=throw_exception, **kwargs)
 * 
 *     def _request_futures_api(self, method, path, signed=False, version=1, throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         uri = self._create_futures_api_uri(path, version=version)
 *         return self._request(method, uri, signed, True, throw_exception=throw_exception, **kwargs)
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_35_request_futures_api(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_35_request_futures_api = {"_request_futures_api", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_35_request_futures_api, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_35_request_futures_api(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_method = 0;
  PyObject *__pyx_v_path = 0;
  PyObject *__pyx_v_signed = 0;
  PyObject *__pyx_v_version = 0;
  PyObject *__pyx_v_throw_exception = 0;
  PyObject *__pyx_v_kwargs = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[6] = {0,0,0,0,0,0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("_request_futures_api (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_kwargs = PyDict_New(); if (unlikely(!__pyx_v_kwargs)) return NULL;
  __Pyx_GOTREF(__pyx_v_kwargs);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,&__pyx_mstate_global->__pyx_n_u_method,&__pyx_mstate_global->__pyx_n_u_path,&__pyx_mstate_global->__pyx_n_u_signed,&__pyx_mstate_global->__pyx_n_u_version_2,&__pyx_mstate_global->__pyx_n_u_throw_exception,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 558, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  6:
        values[5] = __Pyx_ArgRef_FASTCALL(__pyx_args, 5);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 558, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  5:
        values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 558, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  4:
        values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 558, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  3:
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 558, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 558, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 558, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_kwargs, values, kwd_pos_args, __pyx_kwds_len, "_request_futures_api", 1) < 0) __PYX_ERR(0, 558, __pyx_L3_error)
      if (!values[3]) values[3] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_False)));
      if (!values[4]) values[4] = __Pyx_NewRef(((PyObject *)((PyObject*)__pyx_mstate_global->__pyx_int_1)));
      if (!values[5]) values[5] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_True)));
      for (Py_ssize_t i = __pyx_nargs; i < 3; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("_request_futures_api", 0, 3, 6, i); __PYX_ERR(0, 558, __pyx_L3_error) }
      }
    } else {
      switch (__pyx_nargs) {
        case  6:
        values[5] = __Pyx_ArgRef_FASTCALL(__pyx_args, 5);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 558, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  5:
        values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 558, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  4:
        values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 558, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  3:
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 558, __pyx_L3_error)
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 558, __pyx_L3_error)
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 558, __pyx_L3_error)
        break;
        default: goto __pyx_L5_argtuple_error;
      }
      if (!values[3]) values[3] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_False)));
      if (!values[4]) values[4] = __Pyx_NewRef(((PyObject *)((PyObject*)__pyx_mstate_global->__pyx_int_1)));
      if (!values[5]) values[5] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_True)));
    }
    __pyx_v_self = values[0];
    __pyx_v_method = values[1];
    __pyx_v_path = values[2];
    __pyx_v_signed = values[3];
    __pyx_v_version = values[4];
    __pyx_v_throw_exception = values[5];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("_request_futures_api", 0, 3, 6, __pyx_nargs); __PYX_ERR(0, 558, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_kwargs); __pyx_v_kwargs = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager._request_futures_api", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_34_request_futures_api(__pyx_self, __pyx_v_self, __pyx_v_method, __pyx_v_path, __pyx_v_signed, __pyx_v_version, __pyx_v_throw_exception, __pyx_v_kwargs);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_kwargs);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_34_request_futures_api(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_method, PyObject *__pyx_v_path, PyObject *__pyx_v_signed, PyObject *__pyx_v_version, PyObject *__pyx_v_throw_exception, PyObject *__pyx_v_kwargs) {
  PyObject *__pyx_v_uri = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  size_t __pyx_t_3;
  PyObject *__pyx_t_4 = NULL;
  PyObject *__pyx_t_5 = NULL;
  PyObject *__pyx_t_6 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("_request_futures_api", 0);

  /* "unicorn_binance_rest_api/manager.py":559
 * 
 *     def _request_futures_api(self, method, path, signed=False, version=1, throw_exception=True, **kwargs):
 *         uri = self._create_futures_api_uri(path, version=version)             # <<<<<<<<<<<<<<
 *         return self._request(method, uri, signed, True, throw_exception=throw_exception, **kwargs)
 * 
*/
  __pyx_t_2 = __pyx_v_self;
  __Pyx_INCREF(__pyx_t_2);
  __pyx_t_3 = 0;
  {
    PyObject *__pyx_callargs[2 + ((CYTHON_VECTORCALL) ? 1 : 0)] = {__pyx_t_2, __pyx_v_path};
    __pyx_t_4 = __Pyx_MakeVectorcallBuilderKwds(1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 559, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_version_2, __pyx_v_version, __pyx_t_4, __pyx_callargs+2, 0) < 0) __PYX_ERR(0, 559, __pyx_L1_error)
    __pyx_t_1 = __Pyx_Object_VectorcallMethod_CallFromBuilder(__pyx_mstate_global->__pyx_n_u_create_futures_api_uri, __pyx_callargs+__pyx_t_3, (2-__pyx_t_3) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET), __pyx_t_4);
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 559, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
  }
  __pyx_v_uri = __pyx_t_1;
  __pyx_t_1 = 0;

  /* "unicorn_binance_rest_api/manager.py":560
 *     def _request_futures_api(self, method, path, signed=False, version=1, throw_exception=True, **kwargs):
 *         uri = self._create_futures_api_uri(path, version=version)
 *         return self._request(method, uri, signed, True, throw_exception=throw_exception, **kwargs)             # <<<<<<<<<<<<<<
 * 
 *     def _request_futures_data_api(self, method, path, signed=False, throw_exception=True, **kwargs):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_4 = NULL;
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 560, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __pyx_t_6 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 560, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_6);
  if (PyDict_SetItem(__pyx_t_6, __pyx_mstate_global->__pyx_n_u_throw_exception, __pyx_v_throw_exception) < 0) __PYX_ERR(0, 560, __pyx_L1_error)
  __pyx_t_5 = __pyx_t_6;
  __pyx_t_6 = 0;
  if (__Pyx_MergeKeywords(__pyx_t_5, __pyx_v_kwargs) < 0) __PYX_ERR(0, 560, __pyx_L1_error)
  __pyx_t_3 = 1;
  #if CYTHON_UNPACK_METHODS
  if (likely(PyMethod_Check(__pyx_t_2))) {
    __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_2);
    assert(__pyx_t_4);
    PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_2);
    __Pyx_INCREF(__pyx_t_4);
    __Pyx_INCREF(__pyx__function);
    __Pyx_DECREF_SET(__pyx_t_2, __pyx__function);
    __pyx_t_3 = 0;
  }
  #endif
  {
    PyObject *__pyx_callargs[5] = {__pyx_t_4, __pyx_v_method, __pyx_v_uri, __pyx_v_signed, Py_True};
    __pyx_t_1 = __Pyx_PyObject_FastCallDict(__pyx_t_2, __pyx_callargs+__pyx_t_3, (5-__pyx_t_3) | (__pyx_t_3*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET), __pyx_t_5);
    __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 560, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
  }
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":558
 *         return self._request(method, uri, signed, throw_exception=throw_exception, **kwargs)
 * 
 *     def _request_futures_api(self, method, path, signed=False, version=1, throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         uri = self._create_futures_api_uri(path, version=version)
 *         return self._request(method, uri, signed, True, throw_exception=throw_exception, **kwargs)
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager._request_futures_api", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_uri);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":562
 *         return self._request(method, uri, signed, True, throw_exception=throw_exception, **kwargs)
 * 
 *     def _request_futures_data_api(self, method, path, signed=False, throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         uri = self._create_futures_data_api_uri(path)
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_37_request_futures_data_api(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_37_request_futures_data_api = {"_request_futures_data_api", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_37_request_futures_data_api, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_37_request_futures_data_api(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_method = 0;
  PyObject *__pyx_v_path = 0;
  PyObject *__pyx_v_signed = 0;
  PyObject *__pyx_v_throw_exception = 0;
  PyObject *__pyx_v_kwargs = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[5] = {0,0,0,0,0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("_request_futures_data_api (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_kwargs = PyDict_New(); if (unlikely(!__pyx_v_kwargs)) return NULL;
  __Pyx_GOTREF(__pyx_v_kwargs);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,&__pyx_mstate_global->__pyx_n_u_method,&__pyx_mstate_global->__pyx_n_u_path,&__pyx_mstate_global->__pyx_n_u_signed,&__pyx_mstate_global->__pyx_n_u_throw_exception,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 562, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  5:
        values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 562, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  4:
        values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 562, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  3:
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 562, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 562, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 562, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_kwargs, values, kwd_pos_args, __pyx_kwds_len, "_request_futures_data_api", 1) < 0) __PYX_ERR(0, 562, __pyx_L3_error)
      if (!values[3]) values[3] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_False)));
      if (!values[4]) values[4] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_True)));
      for (Py_ssize_t i = __pyx_nargs; i < 3; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("_request_futures_data_api", 0, 3, 5, i); __PYX_ERR(0, 562, __pyx_L3_error) }
      }
    } else {
      switch (__pyx_nargs) {
        case  5:
        values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 562, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  4:
        values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 562, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  3:
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 562, __pyx_L3_error)
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 562, __pyx_L3_error)
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 562, __pyx_L3_error)
        break;
        default: goto __pyx_L5_argtuple_error;
      }
      if (!values[3]) values[3] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_False)));
      if (!values[4]) values[4] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_True)));
    }
    __pyx_v_self = values[0];
    __pyx_v_method = values[1];
    __pyx_v_path = values[2];
    __pyx_v_signed = values[3];
    __pyx_v_throw_exception = values[4];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("_request_futures_data_api", 0, 3, 5, __pyx_nargs); __PYX_ERR(0, 562, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_kwargs); __pyx_v_kwargs = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager._request_futures_data_api", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_36_request_futures_data_api(__pyx_self, __pyx_v_self, __pyx_v_method, __pyx_v_path, __pyx_v_signed, __pyx_v_throw_exception, __pyx_v_kwargs);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_kwargs);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_36_request_futures_data_api(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_method, PyObject *__pyx_v_path, PyObject *__pyx_v_signed, PyObject *__pyx_v_throw_exception, PyObject *__pyx_v_kwargs) {
  PyObject *__pyx_v_uri = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  size_t __pyx_t_3;
  PyObject *__pyx_t_4 = NULL;
  PyObject *__pyx_t_5 = NULL;
  PyObject *__pyx_t_6 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("_request_futures_data_api", 0);

  /* "unicorn_binance_rest_api/manager.py":563
 * 
 *     def _request_futures_data_api(self, method, path, signed=False, throw_exception=True, **kwargs):
 *         uri = self._create_futures_data_api_uri(path)             # <<<<<<<<<<<<<<
 * 
 *         return self._request(method, uri, signed, True, throw_exception=throw_exception, **kwargs)
*/
  __pyx_t_2 = __pyx_v_self;
  __Pyx_INCREF(__pyx_t_2);
  __pyx_t_3 = 0;
  {
    PyObject *__pyx_callargs[2] = {__pyx_t_2, __pyx_v_path};
    __pyx_t_1 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_create_futures_data_api_uri, __pyx_callargs+__pyx_t_3, (2-__pyx_t_3) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 563, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
  }
  __pyx_v_uri = __pyx_t_1;
  __pyx_t_1 = 0;

  /* "unicorn_binance_rest_api/manager.py":565
 *         uri = self._create_futures_data_api_uri(path)
 * 
 *         return self._request(method, uri, signed, True, throw_exception=throw_exception, **kwargs)             # <<<<<<<<<<<<<<
 * 
 *     def _request_futures_coin_api(self, method, path, signed=False, version=1, throw_exception=True, **kwargs):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_2 = NULL;
  __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 565, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __pyx_t_6 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 565, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_6);
  if (PyDict_SetItem(__pyx_t_6, __pyx_mstate_global->__pyx_n_u_throw_exception, __pyx_v_throw_exception) < 0) __PYX_ERR(0, 565, __pyx_L1_error)
  __pyx_t_5 = __pyx_t_6;
  __pyx_t_6 = 0;
  if (__Pyx_MergeKeywords(__pyx_t_5, __pyx_v_kwargs) < 0) __PYX_ERR(0, 565, __pyx_L1_error)
  __pyx_t_3 = 1;
  #if CYTHON_UNPACK_METHODS
  if (likely(PyMethod_Check(__pyx_t_4))) {
    __pyx_t_2 = PyMethod_GET_SELF(__pyx_t_4);
    assert(__pyx_t_2);
    PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_4);
    __Pyx_INCREF(__pyx_t_2);
    __Pyx_INCREF(__pyx__function);
    __Pyx_DECREF_SET(__pyx_t_4, __pyx__function);
    __pyx_t_3 = 0;
  }
  #endif
  {
    PyObject *__pyx_callargs[5] = {__pyx_t_2, __pyx_v_method, __pyx_v_uri, __pyx_v_signed, Py_True};
    __pyx_t_1 = __Pyx_PyObject_FastCallDict(__pyx_t_4, __pyx_callargs+__pyx_t_3, (5-__pyx_t_3) | (__pyx_t_3*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET), __pyx_t_5);
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 565, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
  }
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":562
 *         return self._request(method, uri, signed, True, throw_exception=throw_exception, **kwargs)
 * 
 *     def _request_futures_data_api(self, method, path, signed=False, throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         uri = self._create_futures_data_api_uri(path)
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager._request_futures_data_api", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_uri);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":567
 *         return self._request(method, uri, signed, True, throw_exception=throw_exception, **kwargs)
 * 
 *     def _request_futures_coin_api(self, method, path, signed=False, version=1, throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         uri = self._create_futures_coin_api_url(path, version=version)
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_39_request_futures_coin_api(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_39_request_futures_coin_api = {"_request_futures_coin_api", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_39_request_futures_coin_api, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_39_request_futures_coin_api(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_method = 0;
  PyObject *__pyx_v_path = 0;
  PyObject *__pyx_v_signed = 0;
  PyObject *__pyx_v_version = 0;
  PyObject *__pyx_v_throw_exception = 0;
  PyObject *__pyx_v_kwargs = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[6] = {0,0,0,0,0,0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("_request_futures_coin_api (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_kwargs = PyDict_New(); if (unlikely(!__pyx_v_kwargs)) return NULL;
  __Pyx_GOTREF(__pyx_v_kwargs);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,&__pyx_mstate_global->__pyx_n_u_method,&__pyx_mstate_global->__pyx_n_u_path,&__pyx_mstate_global->__pyx_n_u_signed,&__pyx_mstate_global->__pyx_n_u_version_2,&__pyx_mstate_global->__pyx_n_u_throw_exception,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 567, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  6:
        values[5] = __Pyx_ArgRef_FASTCALL(__pyx_args, 5);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 567, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  5:
        values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 567, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  4:
        values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 567, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  3:
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 567, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 567, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 567, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_kwargs, values, kwd_pos_args, __pyx_kwds_len, "_request_futures_coin_api", 1) < 0) __PYX_ERR(0, 567, __pyx_L3_error)
      if (!values[3]) values[3] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_False)));
      if (!values[4]) values[4] = __Pyx_NewRef(((PyObject *)((PyObject*)__pyx_mstate_global->__pyx_int_1)));
      if (!values[5]) values[5] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_True)));
      for (Py_ssize_t i = __pyx_nargs; i < 3; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("_request_futures_coin_api", 0, 3, 6, i); __PYX_ERR(0, 567, __pyx_L3_error) }
      }
    } else {
      switch (__pyx_nargs) {
        case  6:
        values[5] = __Pyx_ArgRef_FASTCALL(__pyx_args, 5);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 567, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  5:
        values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 567, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  4:
        values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 567, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  3:
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 567, __pyx_L3_error)
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 567, __pyx_L3_error)
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 567, __pyx_L3_error)
        break;
        default: goto __pyx_L5_argtuple_error;
      }
      if (!values[3]) values[3] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_False)));
      if (!values[4]) values[4] = __Pyx_NewRef(((PyObject *)((PyObject*)__pyx_mstate_global->__pyx_int_1)));
      if (!values[5]) values[5] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_True)));
    }
    __pyx_v_self = values[0];
    __pyx_v_method = values[1];
    __pyx_v_path = values[2];
    __pyx_v_signed = values[3];
    __pyx_v_version = values[4];
    __pyx_v_throw_exception = values[5];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("_request_futures_coin_api", 0, 3, 6, __pyx_nargs); __PYX_ERR(0, 567, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_kwargs); __pyx_v_kwargs = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager._request_futures_coin_api", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_38_request_futures_coin_api(__pyx_self, __pyx_v_self, __pyx_v_method, __pyx_v_path, __pyx_v_signed, __pyx_v_version, __pyx_v_throw_exception, __pyx_v_kwargs);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_kwargs);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_38_request_futures_coin_api(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_method, PyObject *__pyx_v_path, PyObject *__pyx_v_signed, PyObject *__pyx_v_version, PyObject *__pyx_v_throw_exception, PyObject *__pyx_v_kwargs) {
  PyObject *__pyx_v_uri = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  size_t __pyx_t_3;
  PyObject *__pyx_t_4 = NULL;
  PyObject *__pyx_t_5 = NULL;
  PyObject *__pyx_t_6 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("_request_futures_coin_api", 0);

  /* "unicorn_binance_rest_api/manager.py":568
 * 
 *     def _request_futures_coin_api(self, method, path, signed=False, version=1, throw_exception=True, **kwargs):
 *         uri = self._create_futures_coin_api_url(path, version=version)             # <<<<<<<<<<<<<<
 * 
 *         return self._request(method, uri, signed, True, throw_exception=throw_exception, **kwargs)
*/
  __pyx_t_2 = __pyx_v_self;
  __Pyx_INCREF(__pyx_t_2);
  __pyx_t_3 = 0;
  {
    PyObject *__pyx_callargs[2 + ((CYTHON_VECTORCALL) ? 1 : 0)] = {__pyx_t_2, __pyx_v_path};
    __pyx_t_4 = __Pyx_MakeVectorcallBuilderKwds(1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 568, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_version_2, __pyx_v_version, __pyx_t_4, __pyx_callargs+2, 0) < 0) __PYX_ERR(0, 568, __pyx_L1_error)
    __pyx_t_1 = __Pyx_Object_VectorcallMethod_CallFromBuilder(__pyx_mstate_global->__pyx_n_u_create_futures_coin_api_url, __pyx_callargs+__pyx_t_3, (2-__pyx_t_3) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET), __pyx_t_4);
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 568, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
  }
  __pyx_v_uri = __pyx_t_1;
  __pyx_t_1 = 0;

  /* "unicorn_binance_rest_api/manager.py":570
 *         uri = self._create_futures_coin_api_url(path, version=version)
 * 
 *         return self._request(method, uri, signed, True, throw_exception=throw_exception, **kwargs)             # <<<<<<<<<<<<<<
 * 
 *     def _request_futures_coin_data_api(self, method, path, signed=False, version=1, throw_exception=True, **kwargs):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_4 = NULL;
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 570, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __pyx_t_6 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 570, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_6);
  if (PyDict_SetItem(__pyx_t_6, __pyx_mstate_global->__pyx_n_u_throw_exception, __pyx_v_throw_exception) < 0) __PYX_ERR(0, 570, __pyx_L1_error)
  __pyx_t_5 = __pyx_t_6;
  __pyx_t_6 = 0;
  if (__Pyx_MergeKeywords(__pyx_t_5, __pyx_v_kwargs) < 0) __PYX_ERR(0, 570, __pyx_L1_error)
  __pyx_t_3 = 1;
  #if CYTHON_UNPACK_METHODS
  if (likely(PyMethod_Check(__pyx_t_2))) {
    __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_2);
    assert(__pyx_t_4);
    PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_2);
    __Pyx_INCREF(__pyx_t_4);
    __Pyx_INCREF(__pyx__function);
    __Pyx_DECREF_SET(__pyx_t_2, __pyx__function);
    __pyx_t_3 = 0;
  }
  #endif
  {
    PyObject *__pyx_callargs[5] = {__pyx_t_4, __pyx_v_method, __pyx_v_uri, __pyx_v_signed, Py_True};
    __pyx_t_1 = __Pyx_PyObject_FastCallDict(__pyx_t_2, __pyx_callargs+__pyx_t_3, (5-__pyx_t_3) | (__pyx_t_3*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET), __pyx_t_5);
    __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 570, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
  }
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":567
 *         return self._request(method, uri, signed, True, throw_exception=throw_exception, **kwargs)
 * 
 *     def _request_futures_coin_api(self, method, path, signed=False, version=1, throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         uri = self._create_futures_coin_api_url(path, version=version)
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager._request_futures_coin_api", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_uri);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":572
 *         return self._request(method, uri, signed, True, throw_exception=throw_exception, **kwargs)
 * 
 *     def _request_futures_coin_data_api(self, method, path, signed=False, version=1, throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         uri = self._create_futures_coin_data_api_url(path, version=version)
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_41_request_futures_coin_data_api(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_41_request_futures_coin_data_api = {"_request_futures_coin_data_api", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_41_request_futures_coin_data_api, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_41_request_futures_coin_data_api(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_method = 0;
  PyObject *__pyx_v_path = 0;
  PyObject *__pyx_v_signed = 0;
  PyObject *__pyx_v_version = 0;
  PyObject *__pyx_v_throw_exception = 0;
  PyObject *__pyx_v_kwargs = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[6] = {0,0,0,0,0,0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("_request_futures_coin_data_api (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_kwargs = PyDict_New(); if (unlikely(!__pyx_v_kwargs)) return NULL;
  __Pyx_GOTREF(__pyx_v_kwargs);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,&__pyx_mstate_global->__pyx_n_u_method,&__pyx_mstate_global->__pyx_n_u_path,&__pyx_mstate_global->__pyx_n_u_signed,&__pyx_mstate_global->__pyx_n_u_version_2,&__pyx_mstate_global->__pyx_n_u_throw_exception,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 572, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  6:
        values[5] = __Pyx_ArgRef_FASTCALL(__pyx_args, 5);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 572, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  5:
        values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 572, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  4:
        values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 572, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  3:
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 572, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 572, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 572, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_kwargs, values, kwd_pos_args, __pyx_kwds_len, "_request_futures_coin_data_api", 1) < 0) __PYX_ERR(0, 572, __pyx_L3_error)
      if (!values[3]) values[3] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_False)));
      if (!values[4]) values[4] = __Pyx_NewRef(((PyObject *)((PyObject*)__pyx_mstate_global->__pyx_int_1)));
      if (!values[5]) values[5] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_True)));
      for (Py_ssize_t i = __pyx_nargs; i < 3; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("_request_futures_coin_data_api", 0, 3, 6, i); __PYX_ERR(0, 572, __pyx_L3_error) }
      }
    } else {
      switch (__pyx_nargs) {
        case  6:
        values[5] = __Pyx_ArgRef_FASTCALL(__pyx_args, 5);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 572, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  5:
        values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 572, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  4:
        values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 572, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  3:
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 572, __pyx_L3_error)
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 572, __pyx_L3_error)
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 572, __pyx_L3_error)
        break;
        default: goto __pyx_L5_argtuple_error;
      }
      if (!values[3]) values[3] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_False)));
      if (!values[4]) values[4] = __Pyx_NewRef(((PyObject *)((PyObject*)__pyx_mstate_global->__pyx_int_1)));
      if (!values[5]) values[5] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_True)));
    }
    __pyx_v_self = values[0];
    __pyx_v_method = values[1];
    __pyx_v_path = values[2];
    __pyx_v_signed = values[3];
    __pyx_v_version = values[4];
    __pyx_v_throw_exception = values[5];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("_request_futures_coin_data_api", 0, 3, 6, __pyx_nargs); __PYX_ERR(0, 572, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_kwargs); __pyx_v_kwargs = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager._request_futures_coin_data_api", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_40_request_futures_coin_data_api(__pyx_self, __pyx_v_self, __pyx_v_method, __pyx_v_path, __pyx_v_signed, __pyx_v_version, __pyx_v_throw_exception, __pyx_v_kwargs);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_kwargs);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_40_request_futures_coin_data_api(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_method, PyObject *__pyx_v_path, PyObject *__pyx_v_signed, PyObject *__pyx_v_version, PyObject *__pyx_v_throw_exception, PyObject *__pyx_v_kwargs) {
  PyObject *__pyx_v_uri = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  size_t __pyx_t_3;
  PyObject *__pyx_t_4 = NULL;
  PyObject *__pyx_t_5 = NULL;
  PyObject *__pyx_t_6 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("_request_futures_coin_data_api", 0);

  /* "unicorn_binance_rest_api/manager.py":573
 * 
 *     def _request_futures_coin_data_api(self, method, path, signed=False, version=1, throw_exception=True, **kwargs):
 *         uri = self._create_futures_coin_data_api_url(path, version=version)             # <<<<<<<<<<<<<<
 * 
 *         return self._request(method, uri, signed, True, throw_exception=throw_exception, **kwargs)
*/
  __pyx_t_2 = __pyx_v_self;
  __Pyx_INCREF(__pyx_t_2);
  __pyx_t_3 = 0;
  {
    PyObject *__pyx_callargs[2 + ((CYTHON_VECTORCALL) ? 1 : 0)] = {__pyx_t_2, __pyx_v_path};
    __pyx_t_4 = __Pyx_MakeVectorcallBuilderKwds(1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 573, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_version_2, __pyx_v_version, __pyx_t_4, __pyx_callargs+2, 0) < 0) __PYX_ERR(0, 573, __pyx_L1_error)
    __pyx_t_1 = __Pyx_Object_VectorcallMethod_CallFromBuilder(__pyx_mstate_global->__pyx_n_u_create_futures_coin_data_api_ur, __pyx_callargs+__pyx_t_3, (2-__pyx_t_3) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET), __pyx_t_4);
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 573, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
  }
  __pyx_v_uri = __pyx_t_1;
  __pyx_t_1 = 0;

  /* "unicorn_binance_rest_api/manager.py":575
 *         uri = self._create_futures_coin_data_api_url(path, version=version)
 * 
 *         return self._request(method, uri, signed, True, throw_exception=throw_exception, **kwargs)             # <<<<<<<<<<<<<<
 * 
 *     def _save_used_weight(self) -> bool:
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_4 = NULL;
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 575, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __pyx_t_6 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 575, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_6);
  if (PyDict_SetItem(__pyx_t_6, __pyx_mstate_global->__pyx_n_u_throw_exception, __pyx_v_throw_exception) < 0) __PYX_ERR(0, 575, __pyx_L1_error)
  __pyx_t_5 = __pyx_t_6;
  __pyx_t_6 = 0;
  if (__Pyx_MergeKeywords(__pyx_t_5, __pyx_v_kwargs) < 0) __PYX_ERR(0, 575, __pyx_L1_error)
  __pyx_t_3 = 1;
  #if CYTHON_UNPACK_METHODS
  if (likely(PyMethod_Check(__pyx_t_2))) {
    __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_2);
    assert(__pyx_t_4);
    PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_2);
    __Pyx_INCREF(__pyx_t_4);
    __Pyx_INCREF(__pyx__function);
    __Pyx_DECREF_SET(__pyx_t_2, __pyx__function);
    __pyx_t_3 = 0;
  }
  #endif
  {
    PyObject *__pyx_callargs[5] = {__pyx_t_4, __pyx_v_method, __pyx_v_uri, __pyx_v_signed, Py_True};
    __pyx_t_1 = __Pyx_PyObject_FastCallDict(__pyx_t_2, __pyx_callargs+__pyx_t_3, (5-__pyx_t_3) | (__pyx_t_3*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET), __pyx_t_5);
    __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 575, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
  }
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":572
 *         return self._request(method, uri, signed, True, throw_exception=throw_exception, **kwargs)
 * 
 *     def _request_futures_coin_data_api(self, method, path, signed=False, version=1, throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         uri = self._create_futures_coin_data_api_url(path, version=version)
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager._request_futures_coin_data_api", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_uri);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":577
 *         return self._request(method, uri, signed, True, throw_exception=throw_exception, **kwargs)
 * 
 *     def _save_used_weight(self) -> bool:             # <<<<<<<<<<<<<<
 *         try:
 *             weight = self.response.headers.get('X-MBX-USED-WEIGHT')
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_43_save_used_weight(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_43_save_used_weight = {"_save_used_weight", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_43_save_used_weight, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_43_save_used_weight(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("_save_used_weight (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 577, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 577, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "_save_used_weight", 0) < 0) __PYX_ERR(0, 577, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("_save_used_weight", 1, 1, 1, i); __PYX_ERR(0, 577, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 577, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("_save_used_weight", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 577, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager._save_used_weight", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_42_save_used_weight(__pyx_self, __pyx_v_self);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_42_save_used_weight(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
  PyObject *__pyx_v_weight = NULL;
  PyObject *__pyx_v_error_msg = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  PyObject *__pyx_t_4 = NULL;
  PyObject *__pyx_t_5 = NULL;
  PyObject *__pyx_t_6 = NULL;
  PyObject *__pyx_t_7 = NULL;
  size_t __pyx_t_8;
  int __pyx_t_9;
  PyObject *__pyx_t_10 = NULL;
  PyObject *__pyx_t_11 = NULL;
  PyObject *__pyx_t_12 = NULL;
  PyObject *__pyx_t_13 = NULL;
  PyObject *__pyx_t_14 = NULL;
  PyObject *__pyx_t_15 = NULL;
  int __pyx_t_16;
  int __pyx_t_17;
  char const *__pyx_t_18;
  PyObject *__pyx_t_19 = NULL;
  PyObject *__pyx_t_20 = NULL;
  PyObject *__pyx_t_21 = NULL;
  PyObject *__pyx_t_22 = NULL;
  PyObject *__pyx_t_23 = NULL;
  PyObject *__pyx_t_24 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("_save_used_weight", 0);

  /* "unicorn_binance_rest_api/manager.py":578
 * 
 *     def _save_used_weight(self) -> bool:
 *         try:             # <<<<<<<<<<<<<<
 *             weight = self.response.headers.get('X-MBX-USED-WEIGHT')
 *             if weight is None:
*/
  {
    __Pyx_PyThreadState_declare
    __Pyx_PyThreadState_assign
    __Pyx_ExceptionSave(&__pyx_t_1, &__pyx_t_2, &__pyx_t_3);
    __Pyx_XGOTREF(__pyx_t_1);
    __Pyx_XGOTREF(__pyx_t_2);
    __Pyx_XGOTREF(__pyx_t_3);
    /*try:*/ {

      /* "unicorn_binance_rest_api/manager.py":579
 *     def _save_used_weight(self) -> bool:
 *         try:
 *             weight = self.response.headers.get('X-MBX-USED-WEIGHT')             # <<<<<<<<<<<<<<
 *             if weight is None:
 *                 return False
*/
      __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_response); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 579, __pyx_L3_error)
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_mstate_global->__pyx_n_u_headers); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 579, __pyx_L3_error)
      __Pyx_GOTREF(__pyx_t_7);
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __pyx_t_5 = __pyx_t_7;
      __Pyx_INCREF(__pyx_t_5);
      __pyx_t_8 = 0;
      {
        PyObject *__pyx_callargs[2] = {__pyx_t_5, __pyx_mstate_global->__pyx_kp_u_X_MBX_USED_WEIGHT};
        __pyx_t_4 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_get, __pyx_callargs+__pyx_t_8, (2-__pyx_t_8) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
        __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 579, __pyx_L3_error)
        __Pyx_GOTREF(__pyx_t_4);
      }
      __pyx_v_weight = __pyx_t_4;
      __pyx_t_4 = 0;

      /* "unicorn_binance_rest_api/manager.py":580
 *         try:
 *             weight = self.response.headers.get('X-MBX-USED-WEIGHT')
 *             if weight is None:             # <<<<<<<<<<<<<<
 *                 return False
 *             self.used_weight = {'status_code': int(self.response.status_code),
*/
      __pyx_t_9 = (__pyx_v_weight == Py_None);
      if (__pyx_t_9) {

        /* "unicorn_binance_rest_api/manager.py":581
 *             weight = self.response.headers.get('X-MBX-USED-WEIGHT')
 *             if weight is None:
 *                 return False             # <<<<<<<<<<<<<<
 *             self.used_weight = {'status_code': int(self.response.status_code),
 *                                 'timestamp': datetime.datetime.strptime(self.response.headers.get('Date'),
*/
        __Pyx_XDECREF(__pyx_r);
        __Pyx_INCREF(Py_False);
        __pyx_r = Py_False;
        goto __pyx_L7_try_return;

        /* "unicorn_binance_rest_api/manager.py":580
 *         try:
 *             weight = self.response.headers.get('X-MBX-USED-WEIGHT')
 *             if weight is None:             # <<<<<<<<<<<<<<
 *                 return False
 *             self.used_weight = {'status_code': int(self.response.status_code),
*/
      }

      /* "unicorn_binance_rest_api/manager.py":582
 *             if weight is None:
 *                 return False
 *             self.used_weight = {'status_code': int(self.response.status_code),             # <<<<<<<<<<<<<<
 *                                 'timestamp': datetime.datetime.strptime(self.response.headers.get('Date'),
 *                                                                         "%a, %d %b %Y %H:%M:%S GMT").timestamp(),
*/
      __pyx_t_4 = __Pyx_PyDict_NewPresized(3); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 582, __pyx_L3_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_response); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 582, __pyx_L3_error)
      __Pyx_GOTREF(__pyx_t_7);
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_mstate_global->__pyx_n_u_status_code); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 582, __pyx_L3_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __pyx_t_7 = __Pyx_PyNumber_Int(__pyx_t_5); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 582, __pyx_L3_error)
      __Pyx_GOTREF(__pyx_t_7);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      if (PyDict_SetItem(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_status_code, __pyx_t_7) < 0) __PYX_ERR(0, 582, __pyx_L3_error)
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;

      /* "unicorn_binance_rest_api/manager.py":583
 *                 return False
 *             self.used_weight = {'status_code': int(self.response.status_code),
 *                                 'timestamp': datetime.datetime.strptime(self.response.headers.get('Date'),             # <<<<<<<<<<<<<<
 *                                                                         "%a, %d %b %Y %H:%M:%S GMT").timestamp(),
 *                                 'weight': int(weight)}
*/
      __Pyx_GetModuleGlobalName(__pyx_t_11, __pyx_mstate_global->__pyx_n_u_datetime); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 583, __pyx_L3_error)
      __Pyx_GOTREF(__pyx_t_11);
      __pyx_t_12 = __Pyx_PyObject_GetAttrStr(__pyx_t_11, __pyx_mstate_global->__pyx_n_u_datetime); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 583, __pyx_L3_error)
      __Pyx_GOTREF(__pyx_t_12);
      __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
      __pyx_t_10 = __pyx_t_12;
      __Pyx_INCREF(__pyx_t_10);
      __pyx_t_14 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_response); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 583, __pyx_L3_error)
      __Pyx_GOTREF(__pyx_t_14);
      __pyx_t_15 = __Pyx_PyObject_GetAttrStr(__pyx_t_14, __pyx_mstate_global->__pyx_n_u_headers); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 583, __pyx_L3_error)
      __Pyx_GOTREF(__pyx_t_15);
      __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
      __pyx_t_13 = __pyx_t_15;
      __Pyx_INCREF(__pyx_t_13);
      __pyx_t_8 = 0;
      {
        PyObject *__pyx_callargs[2] = {__pyx_t_13, __pyx_mstate_global->__pyx_n_u_Date};
        __pyx_t_11 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_get, __pyx_callargs+__pyx_t_8, (2-__pyx_t_8) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
        __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
        __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
        if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 583, __pyx_L3_error)
        __Pyx_GOTREF(__pyx_t_11);
      }
      __pyx_t_8 = 0;
      {
        PyObject *__pyx_callargs[3] = {__pyx_t_10, __pyx_t_11, __pyx_mstate_global->__pyx_kp_u_a_d_b_Y_H_M_S_GMT};
        __pyx_t_6 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_strptime, __pyx_callargs+__pyx_t_8, (3-__pyx_t_8) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
        __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
        __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
        __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
        if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 583, __pyx_L3_error)
        __Pyx_GOTREF(__pyx_t_6);
      }
      __pyx_t_5 = __pyx_t_6;
      __Pyx_INCREF(__pyx_t_5);
      __pyx_t_8 = 0;
      {
        PyObject *__pyx_callargs[2] = {__pyx_t_5, NULL};
        __pyx_t_7 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_timestamp, __pyx_callargs+__pyx_t_8, (1-__pyx_t_8) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
        __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 584, __pyx_L3_error)
        __Pyx_GOTREF(__pyx_t_7);
      }
      if (PyDict_SetItem(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_timestamp, __pyx_t_7) < 0) __PYX_ERR(0, 582, __pyx_L3_error)
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;

      /* "unicorn_binance_rest_api/manager.py":585
 *                                 'timestamp': datetime.datetime.strptime(self.response.headers.get('Date'),
 *                                                                         "%a, %d %b %Y %H:%M:%S GMT").timestamp(),
 *                                 'weight': int(weight)}             # <<<<<<<<<<<<<<
 *         except Exception as error_msg:
 *             logger.debug(f"BinanceRestApiManager._save_used_weight() - Exception: {error_msg}")
*/
      __pyx_t_7 = __Pyx_PyNumber_Int(__pyx_v_weight); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 585, __pyx_L3_error)
      __Pyx_GOTREF(__pyx_t_7);
      if (PyDict_SetItem(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_weight, __pyx_t_7) < 0) __PYX_ERR(0, 582, __pyx_L3_error)
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;

      /* "unicorn_binance_rest_api/manager.py":582
 *             if weight is None:
 *                 return False
 *             self.used_weight = {'status_code': int(self.response.status_code),             # <<<<<<<<<<<<<<
 *                                 'timestamp': datetime.datetime.strptime(self.response.headers.get('Date'),
 *                                                                         "%a, %d %b %Y %H:%M:%S GMT").timestamp(),
*/
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_used_weight, __pyx_t_4) < 0) __PYX_ERR(0, 582, __pyx_L3_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

      /* "unicorn_binance_rest_api/manager.py":578
 * 
 *     def _save_used_weight(self) -> bool:
 *         try:             # <<<<<<<<<<<<<<
 *             weight = self.response.headers.get('X-MBX-USED-WEIGHT')
 *             if weight is None:
*/
    }
    __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
    goto __pyx_L8_try_end;
    __pyx_L3_error:;
    __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
    __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
    __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
    __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
    __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;
    __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
    __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;

    /* "unicorn_binance_rest_api/manager.py":586
 *                                                                         "%a, %d %b %Y %H:%M:%S GMT").timestamp(),
 *                                 'weight': int(weight)}
 *         except Exception as error_msg:             # <<<<<<<<<<<<<<
 *             logger.debug(f"BinanceRestApiManager._save_used_weight() - Exception: {error_msg}")
 *             return False
*/
    __pyx_t_16 = __Pyx_PyErr_ExceptionMatches(((PyObject *)(((PyTypeObject*)PyExc_Exception))));
    if (__pyx_t_16) {
      __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager._save_used_weight", __pyx_clineno, __pyx_lineno, __pyx_filename);
      if (__Pyx_GetException(&__pyx_t_4, &__pyx_t_7, &__pyx_t_6) < 0) __PYX_ERR(0, 586, __pyx_L5_except_error)
      __Pyx_XGOTREF(__pyx_t_4);
      __Pyx_XGOTREF(__pyx_t_7);
      __Pyx_XGOTREF(__pyx_t_6);
      __Pyx_INCREF(__pyx_t_7);
      __pyx_v_error_msg = __pyx_t_7;
      /*try:*/ {

        /* "unicorn_binance_rest_api/manager.py":587
 *                                 'weight': int(weight)}
 *         except Exception as error_msg:
 *             logger.debug(f"BinanceRestApiManager._save_used_weight() - Exception: {error_msg}")             # <<<<<<<<<<<<<<
 *             return False
 *         return True
*/
        __pyx_t_12 = NULL;
        __Pyx_GetModuleGlobalName(__pyx_t_11, __pyx_mstate_global->__pyx_n_u_logger); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 587, __pyx_L15_error)
        __Pyx_GOTREF(__pyx_t_11);
        __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_t_11, __pyx_mstate_global->__pyx_n_u_debug); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 587, __pyx_L15_error)
        __Pyx_GOTREF(__pyx_t_10);
        __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
        __pyx_t_11 = __Pyx_PyObject_FormatSimple(__pyx_v_error_msg, __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 587, __pyx_L15_error)
        __Pyx_GOTREF(__pyx_t_11);
        __pyx_t_15 = __Pyx_PyUnicode_Concat(__pyx_mstate_global->__pyx_kp_u_BinanceRestApiManager__save_used, __pyx_t_11); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 587, __pyx_L15_error)
        __Pyx_GOTREF(__pyx_t_15);
        __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
        __pyx_t_8 = 1;
        #if CYTHON_UNPACK_METHODS
        if (unlikely(PyMethod_Check(__pyx_t_10))) {
          __pyx_t_12 = PyMethod_GET_SELF(__pyx_t_10);
          assert(__pyx_t_12);
          PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_10);
          __Pyx_INCREF(__pyx_t_12);
          __Pyx_INCREF(__pyx__function);
          __Pyx_DECREF_SET(__pyx_t_10, __pyx__function);
          __pyx_t_8 = 0;
        }
        #endif
        {
          PyObject *__pyx_callargs[2] = {__pyx_t_12, __pyx_t_15};
          __pyx_t_5 = __Pyx_PyObject_FastCall(__pyx_t_10, __pyx_callargs+__pyx_t_8, (2-__pyx_t_8) | (__pyx_t_8*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
          __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
          __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 587, __pyx_L15_error)
          __Pyx_GOTREF(__pyx_t_5);
        }
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;

        /* "unicorn_binance_rest_api/manager.py":588
 *         except Exception as error_msg:
 *             logger.debug(f"BinanceRestApiManager._save_used_weight() - Exception: {error_msg}")
 *             return False             # <<<<<<<<<<<<<<
 *         return True
 * 
*/
        __Pyx_XDECREF(__pyx_r);
        __Pyx_INCREF(Py_False);
        __pyx_r = Py_False;
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        goto __pyx_L14_return;
      }

      /* "unicorn_binance_rest_api/manager.py":586
 *                                                                         "%a, %d %b %Y %H:%M:%S GMT").timestamp(),
 *                                 'weight': int(weight)}
 *         except Exception as error_msg:             # <<<<<<<<<<<<<<
 *             logger.debug(f"BinanceRestApiManager._save_used_weight() - Exception: {error_msg}")
 *             return False
*/
      /*finally:*/ {
        __pyx_L15_error:;
        /*exception exit:*/{
          __Pyx_PyThreadState_declare
          __Pyx_PyThreadState_assign
          __pyx_t_19 = 0; __pyx_t_20 = 0; __pyx_t_21 = 0; __pyx_t_22 = 0; __pyx_t_23 = 0; __pyx_t_24 = 0;
          __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
          __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
          __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
          __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
          __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;
          __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
          __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
           __Pyx_ExceptionSwap(&__pyx_t_22, &__pyx_t_23, &__pyx_t_24);
          if ( unlikely(__Pyx_GetException(&__pyx_t_19, &__pyx_t_20, &__pyx_t_21) < 0)) __Pyx_ErrFetch(&__pyx_t_19, &__pyx_t_20, &__pyx_t_21);
          __Pyx_XGOTREF(__pyx_t_19);
          __Pyx_XGOTREF(__pyx_t_20);
          __Pyx_XGOTREF(__pyx_t_21);
          __Pyx_XGOTREF(__pyx_t_22);
          __Pyx_XGOTREF(__pyx_t_23);
          __Pyx_XGOTREF(__pyx_t_24);
          __pyx_t_16 = __pyx_lineno; __pyx_t_17 = __pyx_clineno; __pyx_t_18 = __pyx_filename;
          {
            __Pyx_DECREF(__pyx_v_error_msg); __pyx_v_error_msg = 0;
          }
          __Pyx_XGIVEREF(__pyx_t_22);
          __Pyx_XGIVEREF(__pyx_t_23);
          __Pyx_XGIVEREF(__pyx_t_24);
          __Pyx_ExceptionReset(__pyx_t_22, __pyx_t_23, __pyx_t_24);
          __Pyx_XGIVEREF(__pyx_t_19);
          __Pyx_XGIVEREF(__pyx_t_20);
          __Pyx_XGIVEREF(__pyx_t_21);
          __Pyx_ErrRestore(__pyx_t_19, __pyx_t_20, __pyx_t_21);
          __pyx_t_19 = 0; __pyx_t_20 = 0; __pyx_t_21 = 0; __pyx_t_22 = 0; __pyx_t_23 = 0; __pyx_t_24 = 0;
          __pyx_lineno = __pyx_t_16; __pyx_clineno = __pyx_t_17; __pyx_filename = __pyx_t_18;
          goto __pyx_L5_except_error;
        }
        __pyx_L14_return: {
          __pyx_t_24 = __pyx_r;
          __pyx_r = 0;
          __Pyx_DECREF(__pyx_v_error_msg); __pyx_v_error_msg = 0;
          __pyx_r = __pyx_t_24;
          __pyx_t_24 = 0;
          goto __pyx_L6_except_return;
        }
      }
    }
    goto __pyx_L5_except_error;

    /* "unicorn_binance_rest_api/manager.py":578
 * 
 *     def _save_used_weight(self) -> bool:
 *         try:             # <<<<<<<<<<<<<<
 *             weight = self.response.headers.get('X-MBX-USED-WEIGHT')
 *             if weight is None:
*/
    __pyx_L5_except_error:;
    __Pyx_XGIVEREF(__pyx_t_1);
    __Pyx_XGIVEREF(__pyx_t_2);
    __Pyx_XGIVEREF(__pyx_t_3);
    __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
    goto __pyx_L1_error;
    __pyx_L7_try_return:;
    __Pyx_XGIVEREF(__pyx_t_1);
    __Pyx_XGIVEREF(__pyx_t_2);
    __Pyx_XGIVEREF(__pyx_t_3);
    __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
    goto __pyx_L0;
    __pyx_L6_except_return:;
    __Pyx_XGIVEREF(__pyx_t_1);
    __Pyx_XGIVEREF(__pyx_t_2);
    __Pyx_XGIVEREF(__pyx_t_3);
    __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
    goto __pyx_L0;
    __pyx_L8_try_end:;
  }

  /* "unicorn_binance_rest_api/manager.py":589
 *             logger.debug(f"BinanceRestApiManager._save_used_weight() - Exception: {error_msg}")
 *             return False
 *         return True             # <<<<<<<<<<<<<<
 * 
 *     def _handle_response(self, throw_exception=True):
*/
  __Pyx_XDECREF(__pyx_r);
  __Pyx_INCREF(Py_True);
  __pyx_r = Py_True;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":577
 *         return self._request(method, uri, signed, True, throw_exception=throw_exception, **kwargs)
 * 
 *     def _save_used_weight(self) -> bool:             # <<<<<<<<<<<<<<
 *         try:
 *             weight = self.response.headers.get('X-MBX-USED-WEIGHT')
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_XDECREF(__pyx_t_10);
  __Pyx_XDECREF(__pyx_t_11);
  __Pyx_XDECREF(__pyx_t_12);
  __Pyx_XDECREF(__pyx_t_13);
  __Pyx_XDECREF(__pyx_t_14);
  __Pyx_XDECREF(__pyx_t_15);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager._save_used_weight", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_weight);
  __Pyx_XDECREF(__pyx_v_error_msg);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":591
 *         return True
 * 
 *     def _handle_response(self, throw_exception=True):             # <<<<<<<<<<<<<<
 *         """
 *         Internal helper for handling API responses from the Binance server.
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_45_handle_response(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_44_handle_response, "\n        Internal helper for handling API responses from the Binance server.\n        Raises the appropriate exceptions when necessary; otherwise, returns the\n        response.\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_45_handle_response = {"_handle_response", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_45_handle_response, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_44_handle_response};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_45_handle_response(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_throw_exception = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[2] = {0,0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("_handle_response (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,&__pyx_mstate_global->__pyx_n_u_throw_exception,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 591, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 591, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 591, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "_handle_response", 0) < 0) __PYX_ERR(0, 591, __pyx_L3_error)
      if (!values[1]) values[1] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_True)));
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("_handle_response", 0, 1, 2, i); __PYX_ERR(0, 591, __pyx_L3_error) }
      }
    } else {
      switch (__pyx_nargs) {
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 591, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 591, __pyx_L3_error)
        break;
        default: goto __pyx_L5_argtuple_error;
      }
      if (!values[1]) values[1] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_True)));
    }
    __pyx_v_self = values[0];
    __pyx_v_throw_exception = values[1];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("_handle_response", 0, 1, 2, __pyx_nargs); __PYX_ERR(0, 591, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager._handle_response", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_44_handle_response(__pyx_self, __pyx_v_self, __pyx_v_throw_exception);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_44_handle_response(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_throw_exception) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_t_4;
  PyObject *__pyx_t_5 = NULL;
  PyObject *__pyx_t_6 = NULL;
  size_t __pyx_t_7;
  PyObject *__pyx_t_8 = NULL;
  PyObject *__pyx_t_9 = NULL;
  PyObject *__pyx_t_10 = NULL;
  int __pyx_t_11;
  PyObject *__pyx_t_12 = NULL;
  PyObject *__pyx_t_13 = NULL;
  PyObject *__pyx_t_14 = NULL;
  PyObject *__pyx_t_15 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("_handle_response", 0);

  /* "unicorn_binance_rest_api/manager.py":598
 * 
 *         """
 *         if throw_exception is True:             # <<<<<<<<<<<<<<
 *             if not (200 <= self.response.status_code < 300):
 *                 raise BinanceAPIException(self.response)
*/
  __pyx_t_1 = (__pyx_v_throw_exception == Py_True);
  if (__pyx_t_1) {

    /* "unicorn_binance_rest_api/manager.py":599
 *         """
 *         if throw_exception is True:
 *             if not (200 <= self.response.status_code < 300):             # <<<<<<<<<<<<<<
 *                 raise BinanceAPIException(self.response)
 *         try:
*/
    __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_response); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 599, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_status_code); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 599, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_2 = PyObject_RichCompare(__pyx_mstate_global->__pyx_int_200, __pyx_t_3, Py_LE); __Pyx_XGOTREF(__pyx_t_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 599, __pyx_L1_error)
    if (__Pyx_PyObject_IsTrue(__pyx_t_2)) {
      __Pyx_DECREF(__pyx_t_2);
      __pyx_t_2 = PyObject_RichCompare(__pyx_t_3, __pyx_mstate_global->__pyx_int_300, Py_LT); __Pyx_XGOTREF(__pyx_t_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 599, __pyx_L1_error)
    }
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 599, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_4 = (!__pyx_t_1);
    if (unlikely(__pyx_t_4)) {

      /* "unicorn_binance_rest_api/manager.py":600
 *         if throw_exception is True:
 *             if not (200 <= self.response.status_code < 300):
 *                 raise BinanceAPIException(self.response)             # <<<<<<<<<<<<<<
 *         try:
 *             self._save_used_weight()
*/
      __pyx_t_3 = NULL;
      __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_BinanceAPIException); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 600, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_response); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 600, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_7 = 1;
      #if CYTHON_UNPACK_METHODS
      if (unlikely(PyMethod_Check(__pyx_t_5))) {
        __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_5);
        assert(__pyx_t_3);
        PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_5);
        __Pyx_INCREF(__pyx_t_3);
        __Pyx_INCREF(__pyx__function);
        __Pyx_DECREF_SET(__pyx_t_5, __pyx__function);
        __pyx_t_7 = 0;
      }
      #endif
      {
        PyObject *__pyx_callargs[2] = {__pyx_t_3, __pyx_t_6};
        __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_5, __pyx_callargs+__pyx_t_7, (2-__pyx_t_7) | (__pyx_t_7*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 600, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_2);
      }
      __Pyx_Raise(__pyx_t_2, 0, 0, 0);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __PYX_ERR(0, 600, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":599
 *         """
 *         if throw_exception is True:
 *             if not (200 <= self.response.status_code < 300):             # <<<<<<<<<<<<<<
 *                 raise BinanceAPIException(self.response)
 *         try:
*/
    }

    /* "unicorn_binance_rest_api/manager.py":598
 * 
 *         """
 *         if throw_exception is True:             # <<<<<<<<<<<<<<
 *             if not (200 <= self.response.status_code < 300):
 *                 raise BinanceAPIException(self.response)
*/
  }

  /* "unicorn_binance_rest_api/manager.py":601
 *             if not (200 <= self.response.status_code < 300):
 *                 raise BinanceAPIException(self.response)
 *         try:             # <<<<<<<<<<<<<<
 *             self._save_used_weight()
 *             return self.response.json()
*/
  {
    __Pyx_PyThreadState_declare
    __Pyx_PyThreadState_assign
    __Pyx_ExceptionSave(&__pyx_t_8, &__pyx_t_9, &__pyx_t_10);
    __Pyx_XGOTREF(__pyx_t_8);
    __Pyx_XGOTREF(__pyx_t_9);
    __Pyx_XGOTREF(__pyx_t_10);
    /*try:*/ {

      /* "unicorn_binance_rest_api/manager.py":602
 *                 raise BinanceAPIException(self.response)
 *         try:
 *             self._save_used_weight()             # <<<<<<<<<<<<<<
 *             return self.response.json()
 *         except ValueError:
*/
      __pyx_t_5 = __pyx_v_self;
      __Pyx_INCREF(__pyx_t_5);
      __pyx_t_7 = 0;
      {
        PyObject *__pyx_callargs[2] = {__pyx_t_5, NULL};
        __pyx_t_2 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_save_used_weight, __pyx_callargs+__pyx_t_7, (1-__pyx_t_7) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
        __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
        if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 602, __pyx_L5_error)
        __Pyx_GOTREF(__pyx_t_2);
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

      /* "unicorn_binance_rest_api/manager.py":603
 *         try:
 *             self._save_used_weight()
 *             return self.response.json()             # <<<<<<<<<<<<<<
 *         except ValueError:
 *             raise BinanceRequestException('Invalid Response: %s' % self.response.text)
*/
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_response); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 603, __pyx_L5_error)
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_5 = __pyx_t_6;
      __Pyx_INCREF(__pyx_t_5);
      __pyx_t_7 = 0;
      {
        PyObject *__pyx_callargs[2] = {__pyx_t_5, NULL};
        __pyx_t_2 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_json, __pyx_callargs+__pyx_t_7, (1-__pyx_t_7) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
        __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 603, __pyx_L5_error)
        __Pyx_GOTREF(__pyx_t_2);
      }
      __pyx_r = __pyx_t_2;
      __pyx_t_2 = 0;
      goto __pyx_L9_try_return;

      /* "unicorn_binance_rest_api/manager.py":601
 *             if not (200 <= self.response.status_code < 300):
 *                 raise BinanceAPIException(self.response)
 *         try:             # <<<<<<<<<<<<<<
 *             self._save_used_weight()
 *             return self.response.json()
*/
    }
    __pyx_L5_error:;
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;

    /* "unicorn_binance_rest_api/manager.py":604
 *             self._save_used_weight()
 *             return self.response.json()
 *         except ValueError:             # <<<<<<<<<<<<<<
 *             raise BinanceRequestException('Invalid Response: %s' % self.response.text)
 * 
*/
    __pyx_t_11 = __Pyx_PyErr_ExceptionMatches(__pyx_builtin_ValueError);
    if (__pyx_t_11) {
      __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager._handle_response", __pyx_clineno, __pyx_lineno, __pyx_filename);
      if (__Pyx_GetException(&__pyx_t_2, &__pyx_t_6, &__pyx_t_5) < 0) __PYX_ERR(0, 604, __pyx_L7_except_error)
      __Pyx_XGOTREF(__pyx_t_2);
      __Pyx_XGOTREF(__pyx_t_6);
      __Pyx_XGOTREF(__pyx_t_5);

      /* "unicorn_binance_rest_api/manager.py":605
 *             return self.response.json()
 *         except ValueError:
 *             raise BinanceRequestException('Invalid Response: %s' % self.response.text)             # <<<<<<<<<<<<<<
 * 
 *     def _get(self, path, signed=False, version=PUBLIC_API_VERSION, **kwargs):
*/
      __pyx_t_12 = NULL;
      __Pyx_GetModuleGlobalName(__pyx_t_13, __pyx_mstate_global->__pyx_n_u_BinanceRequestException); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 605, __pyx_L7_except_error)
      __Pyx_GOTREF(__pyx_t_13);
      __pyx_t_14 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_response); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 605, __pyx_L7_except_error)
      __Pyx_GOTREF(__pyx_t_14);
      __pyx_t_15 = __Pyx_PyObject_GetAttrStr(__pyx_t_14, __pyx_mstate_global->__pyx_n_u_text); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 605, __pyx_L7_except_error)
      __Pyx_GOTREF(__pyx_t_15);
      __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
      __pyx_t_14 = __Pyx_PyUnicode_FormatSafe(__pyx_mstate_global->__pyx_kp_u_Invalid_Response_s, __pyx_t_15); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 605, __pyx_L7_except_error)
      __Pyx_GOTREF(__pyx_t_14);
      __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
      __pyx_t_7 = 1;
      #if CYTHON_UNPACK_METHODS
      if (unlikely(PyMethod_Check(__pyx_t_13))) {
        __pyx_t_12 = PyMethod_GET_SELF(__pyx_t_13);
        assert(__pyx_t_12);
        PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_13);
        __Pyx_INCREF(__pyx_t_12);
        __Pyx_INCREF(__pyx__function);
        __Pyx_DECREF_SET(__pyx_t_13, __pyx__function);
        __pyx_t_7 = 0;
      }
      #endif
      {
        PyObject *__pyx_callargs[2] = {__pyx_t_12, __pyx_t_14};
        __pyx_t_3 = __Pyx_PyObject_FastCall(__pyx_t_13, __pyx_callargs+__pyx_t_7, (2-__pyx_t_7) | (__pyx_t_7*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
        __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
        __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
        __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
        if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 605, __pyx_L7_except_error)
        __Pyx_GOTREF(__pyx_t_3);
      }
      __Pyx_Raise(__pyx_t_3, 0, 0, 0);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __PYX_ERR(0, 605, __pyx_L7_except_error)
    }
    goto __pyx_L7_except_error;

    /* "unicorn_binance_rest_api/manager.py":601
 *             if not (200 <= self.response.status_code < 300):
 *                 raise BinanceAPIException(self.response)
 *         try:             # <<<<<<<<<<<<<<
 *             self._save_used_weight()
 *             return self.response.json()
*/
    __pyx_L7_except_error:;
    __Pyx_XGIVEREF(__pyx_t_8);
    __Pyx_XGIVEREF(__pyx_t_9);
    __Pyx_XGIVEREF(__pyx_t_10);
    __Pyx_ExceptionReset(__pyx_t_8, __pyx_t_9, __pyx_t_10);
    goto __pyx_L1_error;
    __pyx_L9_try_return:;
    __Pyx_XGIVEREF(__pyx_t_8);
    __Pyx_XGIVEREF(__pyx_t_9);
    __Pyx_XGIVEREF(__pyx_t_10);
    __Pyx_ExceptionReset(__pyx_t_8, __pyx_t_9, __pyx_t_10);
    goto __pyx_L0;
  }

  /* "unicorn_binance_rest_api/manager.py":591
 *         return True
 * 
 *     def _handle_response(self, throw_exception=True):             # <<<<<<<<<<<<<<
 *         """
 *         Internal helper for handling API responses from the Binance server.
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_XDECREF(__pyx_t_12);
  __Pyx_XDECREF(__pyx_t_13);
  __Pyx_XDECREF(__pyx_t_14);
  __Pyx_XDECREF(__pyx_t_15);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager._handle_response", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":607
 *             raise BinanceRequestException('Invalid Response: %s' % self.response.text)
 * 
 *     def _get(self, path, signed=False, version=PUBLIC_API_VERSION, **kwargs):             # <<<<<<<<<<<<<<
 *         return self._request_api('get', path, signed, version, **kwargs)
 * 
*/

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_8__defaults__(CYTHON_UNUSED PyObject *__pyx_self) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("__defaults__", 0);
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 607, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_INCREF(((PyObject*)Py_False));
  __Pyx_GIVEREF(((PyObject*)Py_False));
  if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject*)Py_False)) != (0)) __PYX_ERR(0, 607, __pyx_L1_error);
  __Pyx_INCREF(__Pyx_CyFunction_Defaults(struct __pyx_defaults, __pyx_self)->arg0);
  __Pyx_GIVEREF(__Pyx_CyFunction_Defaults(struct __pyx_defaults, __pyx_self)->arg0);
  if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 1, __Pyx_CyFunction_Defaults(struct __pyx_defaults, __pyx_self)->arg0) != (0)) __PYX_ERR(0, 607, __pyx_L1_error);
  __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 607, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_GIVEREF(__pyx_t_1);
  if (__Pyx_PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_1) != (0)) __PYX_ERR(0, 607, __pyx_L1_error);
  __Pyx_INCREF(Py_None);
  __Pyx_GIVEREF(Py_None);
  if (__Pyx_PyTuple_SET_ITEM(__pyx_t_2, 1, Py_None) != (0)) __PYX_ERR(0, 607, __pyx_L1_error);
  __pyx_t_1 = 0;
  __pyx_r = __pyx_t_2;
  __pyx_t_2 = 0;
  goto __pyx_L0;

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.__defaults__", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_47_get(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_47_get = {"_get", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_47_get, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_47_get(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_path = 0;
  PyObject *__pyx_v_signed = 0;
  PyObject *__pyx_v_version = 0;
  PyObject *__pyx_v_kwargs = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[4] = {0,0,0,0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("_get (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_kwargs = PyDict_New(); if (unlikely(!__pyx_v_kwargs)) return NULL;
  __Pyx_GOTREF(__pyx_v_kwargs);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,&__pyx_mstate_global->__pyx_n_u_path,&__pyx_mstate_global->__pyx_n_u_signed,&__pyx_mstate_global->__pyx_n_u_version_2,0};
    struct __pyx_defaults *__pyx_dynamic_args = __Pyx_CyFunction_Defaults(struct __pyx_defaults, __pyx_self);
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 607, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  4:
        values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 607, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  3:
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 607, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 607, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 607, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_kwargs, values, kwd_pos_args, __pyx_kwds_len, "_get", 1) < 0) __PYX_ERR(0, 607, __pyx_L3_error)
      if (!values[2]) values[2] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_False)));
      if (!values[3]) values[3] = __Pyx_NewRef(__pyx_dynamic_args->arg0);
      for (Py_ssize_t i = __pyx_nargs; i < 2; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("_get", 0, 2, 4, i); __PYX_ERR(0, 607, __pyx_L3_error) }
      }
    } else {
      switch (__pyx_nargs) {
        case  4:
        values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 607, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  3:
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 607, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 607, __pyx_L3_error)
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 607, __pyx_L3_error)
        break;
        default: goto __pyx_L5_argtuple_error;
      }
      if (!values[2]) values[2] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_False)));
      if (!values[3]) values[3] = __Pyx_NewRef(__pyx_dynamic_args->arg0);
    }
    __pyx_v_self = values[0];
    __pyx_v_path = values[1];
    __pyx_v_signed = values[2];
    __pyx_v_version = values[3];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("_get", 0, 2, 4, __pyx_nargs); __PYX_ERR(0, 607, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_kwargs); __pyx_v_kwargs = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager._get", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_46_get(__pyx_self, __pyx_v_self, __pyx_v_path, __pyx_v_signed, __pyx_v_version, __pyx_v_kwargs);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_kwargs);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_46_get(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_path, PyObject *__pyx_v_signed, PyObject *__pyx_v_version, PyObject *__pyx_v_kwargs) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  PyObject *__pyx_t_4 = NULL;
  size_t __pyx_t_5;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("_get", 0);

  /* "unicorn_binance_rest_api/manager.py":608
 * 
 *     def _get(self, path, signed=False, version=PUBLIC_API_VERSION, **kwargs):
 *         return self._request_api('get', path, signed, version, **kwargs)             # <<<<<<<<<<<<<<
 * 
 *     def _post(self, path, signed=False, version=PUBLIC_API_VERSION, throw_exception=True, **kwargs):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_2 = NULL;
  __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_api); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 608, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __pyx_t_4 = PyDict_Copy(__pyx_v_kwargs); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 608, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __pyx_t_5 = 1;
  #if CYTHON_UNPACK_METHODS
  if (likely(PyMethod_Check(__pyx_t_3))) {
    __pyx_t_2 = PyMethod_GET_SELF(__pyx_t_3);
    assert(__pyx_t_2);
    PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_3);
    __Pyx_INCREF(__pyx_t_2);
    __Pyx_INCREF(__pyx__function);
    __Pyx_DECREF_SET(__pyx_t_3, __pyx__function);
    __pyx_t_5 = 0;
  }
  #endif
  {
    PyObject *__pyx_callargs[5] = {__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get, __pyx_v_path, __pyx_v_signed, __pyx_v_version};
    __pyx_t_1 = __Pyx_PyObject_FastCallDict(__pyx_t_3, __pyx_callargs+__pyx_t_5, (5-__pyx_t_5) | (__pyx_t_5*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET), __pyx_t_4);
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 608, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
  }
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":607
 *             raise BinanceRequestException('Invalid Response: %s' % self.response.text)
 * 
 *     def _get(self, path, signed=False, version=PUBLIC_API_VERSION, **kwargs):             # <<<<<<<<<<<<<<
 *         return self._request_api('get', path, signed, version, **kwargs)
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager._get", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":610
 *         return self._request_api('get', path, signed, version, **kwargs)
 * 
 *     def _post(self, path, signed=False, version=PUBLIC_API_VERSION, throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         return self._request_api('post', path, signed, version, throw_exception, **kwargs)
 * 
*/

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_10__defaults__(CYTHON_UNUSED PyObject *__pyx_self) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("__defaults__", 0);
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = PyTuple_New(3); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 610, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_INCREF(((PyObject*)Py_False));
  __Pyx_GIVEREF(((PyObject*)Py_False));
  if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject*)Py_False)) != (0)) __PYX_ERR(0, 610, __pyx_L1_error);
  __Pyx_INCREF(__Pyx_CyFunction_Defaults(struct __pyx_defaults, __pyx_self)->arg0);
  __Pyx_GIVEREF(__Pyx_CyFunction_Defaults(struct __pyx_defaults, __pyx_self)->arg0);
  if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 1, __Pyx_CyFunction_Defaults(struct __pyx_defaults, __pyx_self)->arg0) != (0)) __PYX_ERR(0, 610, __pyx_L1_error);
  __Pyx_INCREF(((PyObject*)Py_True));
  __Pyx_GIVEREF(((PyObject*)Py_True));
  if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 2, ((PyObject*)Py_True)) != (0)) __PYX_ERR(0, 610, __pyx_L1_error);
  __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 610, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_GIVEREF(__pyx_t_1);
  if (__Pyx_PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_1) != (0)) __PYX_ERR(0, 610, __pyx_L1_error);
  __Pyx_INCREF(Py_None);
  __Pyx_GIVEREF(Py_None);
  if (__Pyx_PyTuple_SET_ITEM(__pyx_t_2, 1, Py_None) != (0)) __PYX_ERR(0, 610, __pyx_L1_error);
  __pyx_t_1 = 0;
  __pyx_r = __pyx_t_2;
  __pyx_t_2 = 0;
  goto __pyx_L0;

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.__defaults__", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_49_post(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_49_post = {"_post", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_49_post, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_49_post(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_path = 0;
  PyObject *__pyx_v_signed = 0;
  PyObject *__pyx_v_version = 0;
  PyObject *__pyx_v_throw_exception = 0;
  PyObject *__pyx_v_kwargs = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[5] = {0,0,0,0,0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("_post (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_kwargs = PyDict_New(); if (unlikely(!__pyx_v_kwargs)) return NULL;
  __Pyx_GOTREF(__pyx_v_kwargs);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,&__pyx_mstate_global->__pyx_n_u_path,&__pyx_mstate_global->__pyx_n_u_signed,&__pyx_mstate_global->__pyx_n_u_version_2,&__pyx_mstate_global->__pyx_n_u_throw_exception,0};
    struct __pyx_defaults *__pyx_dynamic_args = __Pyx_CyFunction_Defaults(struct __pyx_defaults, __pyx_self);
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 610, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  5:
        values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 610, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  4:
        values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 610, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  3:
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 610, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 610, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 610, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_kwargs, values, kwd_pos_args, __pyx_kwds_len, "_post", 1) < 0) __PYX_ERR(0, 610, __pyx_L3_error)
      if (!values[2]) values[2] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_False)));
      if (!values[3]) values[3] = __Pyx_NewRef(__pyx_dynamic_args->arg0);
      if (!values[4]) values[4] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_True)));
      for (Py_ssize_t i = __pyx_nargs; i < 2; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("_post", 0, 2, 5, i); __PYX_ERR(0, 610, __pyx_L3_error) }
      }
    } else {
      switch (__pyx_nargs) {
        case  5:
        values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 610, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  4:
        values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 610, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  3:
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 610, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 610, __pyx_L3_error)
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 610, __pyx_L3_error)
        break;
        default: goto __pyx_L5_argtuple_error;
      }
      if (!values[2]) values[2] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_False)));
      if (!values[3]) values[3] = __Pyx_NewRef(__pyx_dynamic_args->arg0);
      if (!values[4]) values[4] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_True)));
    }
    __pyx_v_self = values[0];
    __pyx_v_path = values[1];
    __pyx_v_signed = values[2];
    __pyx_v_version = values[3];
    __pyx_v_throw_exception = values[4];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("_post", 0, 2, 5, __pyx_nargs); __PYX_ERR(0, 610, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_kwargs); __pyx_v_kwargs = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager._post", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_48_post(__pyx_self, __pyx_v_self, __pyx_v_path, __pyx_v_signed, __pyx_v_version, __pyx_v_throw_exception, __pyx_v_kwargs);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_kwargs);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_48_post(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_path, PyObject *__pyx_v_signed, PyObject *__pyx_v_version, PyObject *__pyx_v_throw_exception, PyObject *__pyx_v_kwargs) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  PyObject *__pyx_t_4 = NULL;
  size_t __pyx_t_5;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("_post", 0);

  /* "unicorn_binance_rest_api/manager.py":611
 * 
 *     def _post(self, path, signed=False, version=PUBLIC_API_VERSION, throw_exception=True, **kwargs):
 *         return self._request_api('post', path, signed, version, throw_exception, **kwargs)             # <<<<<<<<<<<<<<
 * 
 *     def _put(self, path, signed=False, version=PUBLIC_API_VERSION, **kwargs):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_2 = NULL;
  __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_api); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 611, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __pyx_t_4 = PyDict_Copy(__pyx_v_kwargs); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 611, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __pyx_t_5 = 1;
  #if CYTHON_UNPACK_METHODS
  if (likely(PyMethod_Check(__pyx_t_3))) {
    __pyx_t_2 = PyMethod_GET_SELF(__pyx_t_3);
    assert(__pyx_t_2);
    PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_3);
    __Pyx_INCREF(__pyx_t_2);
    __Pyx_INCREF(__pyx__function);
    __Pyx_DECREF_SET(__pyx_t_3, __pyx__function);
    __pyx_t_5 = 0;
  }
  #endif
  {
    PyObject *__pyx_callargs[6] = {__pyx_t_2, __pyx_mstate_global->__pyx_n_u_post, __pyx_v_path, __pyx_v_signed, __pyx_v_version, __pyx_v_throw_exception};
    __pyx_t_1 = __Pyx_PyObject_FastCallDict(__pyx_t_3, __pyx_callargs+__pyx_t_5, (6-__pyx_t_5) | (__pyx_t_5*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET), __pyx_t_4);
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 611, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
  }
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":610
 *         return self._request_api('get', path, signed, version, **kwargs)
 * 
 *     def _post(self, path, signed=False, version=PUBLIC_API_VERSION, throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         return self._request_api('post', path, signed, version, throw_exception, **kwargs)
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager._post", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":613
 *         return self._request_api('post', path, signed, version, throw_exception, **kwargs)
 * 
 *     def _put(self, path, signed=False, version=PUBLIC_API_VERSION, **kwargs):             # <<<<<<<<<<<<<<
 *         return self._request_api('put', path, signed, version, **kwargs)
 * 
*/

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_12__defaults__(CYTHON_UNUSED PyObject *__pyx_self) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("__defaults__", 0);
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 613, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_INCREF(((PyObject*)Py_False));
  __Pyx_GIVEREF(((PyObject*)Py_False));
  if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject*)Py_False)) != (0)) __PYX_ERR(0, 613, __pyx_L1_error);
  __Pyx_INCREF(__Pyx_CyFunction_Defaults(struct __pyx_defaults, __pyx_self)->arg0);
  __Pyx_GIVEREF(__Pyx_CyFunction_Defaults(struct __pyx_defaults, __pyx_self)->arg0);
  if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 1, __Pyx_CyFunction_Defaults(struct __pyx_defaults, __pyx_self)->arg0) != (0)) __PYX_ERR(0, 613, __pyx_L1_error);
  __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 613, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_GIVEREF(__pyx_t_1);
  if (__Pyx_PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_1) != (0)) __PYX_ERR(0, 613, __pyx_L1_error);
  __Pyx_INCREF(Py_None);
  __Pyx_GIVEREF(Py_None);
  if (__Pyx_PyTuple_SET_ITEM(__pyx_t_2, 1, Py_None) != (0)) __PYX_ERR(0, 613, __pyx_L1_error);
  __pyx_t_1 = 0;
  __pyx_r = __pyx_t_2;
  __pyx_t_2 = 0;
  goto __pyx_L0;

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.__defaults__", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_51_put(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_51_put = {"_put", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_51_put, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_51_put(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_path = 0;
  PyObject *__pyx_v_signed = 0;
  PyObject *__pyx_v_version = 0;
  PyObject *__pyx_v_kwargs = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[4] = {0,0,0,0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("_put (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_kwargs = PyDict_New(); if (unlikely(!__pyx_v_kwargs)) return NULL;
  __Pyx_GOTREF(__pyx_v_kwargs);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,&__pyx_mstate_global->__pyx_n_u_path,&__pyx_mstate_global->__pyx_n_u_signed,&__pyx_mstate_global->__pyx_n_u_version_2,0};
    struct __pyx_defaults *__pyx_dynamic_args = __Pyx_CyFunction_Defaults(struct __pyx_defaults, __pyx_self);
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 613, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  4:
        values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 613, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  3:
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 613, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 613, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 613, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_kwargs, values, kwd_pos_args, __pyx_kwds_len, "_put", 1) < 0) __PYX_ERR(0, 613, __pyx_L3_error)
      if (!values[2]) values[2] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_False)));
      if (!values[3]) values[3] = __Pyx_NewRef(__pyx_dynamic_args->arg0);
      for (Py_ssize_t i = __pyx_nargs; i < 2; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("_put", 0, 2, 4, i); __PYX_ERR(0, 613, __pyx_L3_error) }
      }
    } else {
      switch (__pyx_nargs) {
        case  4:
        values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 613, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  3:
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 613, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 613, __pyx_L3_error)
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 613, __pyx_L3_error)
        break;
        default: goto __pyx_L5_argtuple_error;
      }
      if (!values[2]) values[2] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_False)));
      if (!values[3]) values[3] = __Pyx_NewRef(__pyx_dynamic_args->arg0);
    }
    __pyx_v_self = values[0];
    __pyx_v_path = values[1];
    __pyx_v_signed = values[2];
    __pyx_v_version = values[3];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("_put", 0, 2, 4, __pyx_nargs); __PYX_ERR(0, 613, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_kwargs); __pyx_v_kwargs = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager._put", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_50_put(__pyx_self, __pyx_v_self, __pyx_v_path, __pyx_v_signed, __pyx_v_version, __pyx_v_kwargs);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_kwargs);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_50_put(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_path, PyObject *__pyx_v_signed, PyObject *__pyx_v_version, PyObject *__pyx_v_kwargs) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  PyObject *__pyx_t_4 = NULL;
  size_t __pyx_t_5;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("_put", 0);

  /* "unicorn_binance_rest_api/manager.py":614
 * 
 *     def _put(self, path, signed=False, version=PUBLIC_API_VERSION, **kwargs):
 *         return self._request_api('put', path, signed, version, **kwargs)             # <<<<<<<<<<<<<<
 * 
 *     def _delete(self, path, signed=False, version=PUBLIC_API_VERSION, **kwargs):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_2 = NULL;
  __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_api); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 614, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __pyx_t_4 = PyDict_Copy(__pyx_v_kwargs); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 614, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __pyx_t_5 = 1;
  #if CYTHON_UNPACK_METHODS
  if (likely(PyMethod_Check(__pyx_t_3))) {
    __pyx_t_2 = PyMethod_GET_SELF(__pyx_t_3);
    assert(__pyx_t_2);
    PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_3);
    __Pyx_INCREF(__pyx_t_2);
    __Pyx_INCREF(__pyx__function);
    __Pyx_DECREF_SET(__pyx_t_3, __pyx__function);
    __pyx_t_5 = 0;
  }
  #endif
  {
    PyObject *__pyx_callargs[5] = {__pyx_t_2, __pyx_mstate_global->__pyx_n_u_put, __pyx_v_path, __pyx_v_signed, __pyx_v_version};
    __pyx_t_1 = __Pyx_PyObject_FastCallDict(__pyx_t_3, __pyx_callargs+__pyx_t_5, (5-__pyx_t_5) | (__pyx_t_5*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET), __pyx_t_4);
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 614, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
  }
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":613
 *         return self._request_api('post', path, signed, version, throw_exception, **kwargs)
 * 
 *     def _put(self, path, signed=False, version=PUBLIC_API_VERSION, **kwargs):             # <<<<<<<<<<<<<<
 *         return self._request_api('put', path, signed, version, **kwargs)
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager._put", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":616
 *         return self._request_api('put', path, signed, version, **kwargs)
 * 
 *     def _delete(self, path, signed=False, version=PUBLIC_API_VERSION, **kwargs):             # <<<<<<<<<<<<<<
 *         return self._request_api('delete', path, signed, version, **kwargs)
 * 
*/

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_14__defaults__(CYTHON_UNUSED PyObject *__pyx_self) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("__defaults__", 0);
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 616, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_INCREF(((PyObject*)Py_False));
  __Pyx_GIVEREF(((PyObject*)Py_False));
  if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject*)Py_False)) != (0)) __PYX_ERR(0, 616, __pyx_L1_error);
  __Pyx_INCREF(__Pyx_CyFunction_Defaults(struct __pyx_defaults, __pyx_self)->arg0);
  __Pyx_GIVEREF(__Pyx_CyFunction_Defaults(struct __pyx_defaults, __pyx_self)->arg0);
  if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 1, __Pyx_CyFunction_Defaults(struct __pyx_defaults, __pyx_self)->arg0) != (0)) __PYX_ERR(0, 616, __pyx_L1_error);
  __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 616, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_GIVEREF(__pyx_t_1);
  if (__Pyx_PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_1) != (0)) __PYX_ERR(0, 616, __pyx_L1_error);
  __Pyx_INCREF(Py_None);
  __Pyx_GIVEREF(Py_None);
  if (__Pyx_PyTuple_SET_ITEM(__pyx_t_2, 1, Py_None) != (0)) __PYX_ERR(0, 616, __pyx_L1_error);
  __pyx_t_1 = 0;
  __pyx_r = __pyx_t_2;
  __pyx_t_2 = 0;
  goto __pyx_L0;

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.__defaults__", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_53_delete(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_53_delete = {"_delete", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_53_delete, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_53_delete(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_path = 0;
  PyObject *__pyx_v_signed = 0;
  PyObject *__pyx_v_version = 0;
  PyObject *__pyx_v_kwargs = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[4] = {0,0,0,0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("_delete (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_kwargs = PyDict_New(); if (unlikely(!__pyx_v_kwargs)) return NULL;
  __Pyx_GOTREF(__pyx_v_kwargs);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,&__pyx_mstate_global->__pyx_n_u_path,&__pyx_mstate_global->__pyx_n_u_signed,&__pyx_mstate_global->__pyx_n_u_version_2,0};
    struct __pyx_defaults *__pyx_dynamic_args = __Pyx_CyFunction_Defaults(struct __pyx_defaults, __pyx_self);
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 616, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  4:
        values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 616, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  3:
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 616, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 616, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 616, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_kwargs, values, kwd_pos_args, __pyx_kwds_len, "_delete", 1) < 0) __PYX_ERR(0, 616, __pyx_L3_error)
      if (!values[2]) values[2] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_False)));
      if (!values[3]) values[3] = __Pyx_NewRef(__pyx_dynamic_args->arg0);
      for (Py_ssize_t i = __pyx_nargs; i < 2; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("_delete", 0, 2, 4, i); __PYX_ERR(0, 616, __pyx_L3_error) }
      }
    } else {
      switch (__pyx_nargs) {
        case  4:
        values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 616, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  3:
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 616, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 616, __pyx_L3_error)
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 616, __pyx_L3_error)
        break;
        default: goto __pyx_L5_argtuple_error;
      }
      if (!values[2]) values[2] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_False)));
      if (!values[3]) values[3] = __Pyx_NewRef(__pyx_dynamic_args->arg0);
    }
    __pyx_v_self = values[0];
    __pyx_v_path = values[1];
    __pyx_v_signed = values[2];
    __pyx_v_version = values[3];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("_delete", 0, 2, 4, __pyx_nargs); __PYX_ERR(0, 616, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_kwargs); __pyx_v_kwargs = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager._delete", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_52_delete(__pyx_self, __pyx_v_self, __pyx_v_path, __pyx_v_signed, __pyx_v_version, __pyx_v_kwargs);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_kwargs);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_52_delete(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_path, PyObject *__pyx_v_signed, PyObject *__pyx_v_version, PyObject *__pyx_v_kwargs) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  PyObject *__pyx_t_4 = NULL;
  size_t __pyx_t_5;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("_delete", 0);

  /* "unicorn_binance_rest_api/manager.py":617
 * 
 *     def _delete(self, path, signed=False, version=PUBLIC_API_VERSION, **kwargs):
 *         return self._request_api('delete', path, signed, version, **kwargs)             # <<<<<<<<<<<<<<
 * 
 *     def is_update_availabe(self):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_2 = NULL;
  __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_api); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 617, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __pyx_t_4 = PyDict_Copy(__pyx_v_kwargs); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 617, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __pyx_t_5 = 1;
  #if CYTHON_UNPACK_METHODS
  if (likely(PyMethod_Check(__pyx_t_3))) {
    __pyx_t_2 = PyMethod_GET_SELF(__pyx_t_3);
    assert(__pyx_t_2);
    PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_3);
    __Pyx_INCREF(__pyx_t_2);
    __Pyx_INCREF(__pyx__function);
    __Pyx_DECREF_SET(__pyx_t_3, __pyx__function);
    __pyx_t_5 = 0;
  }
  #endif
  {
    PyObject *__pyx_callargs[5] = {__pyx_t_2, __pyx_mstate_global->__pyx_n_u_delete, __pyx_v_path, __pyx_v_signed, __pyx_v_version};
    __pyx_t_1 = __Pyx_PyObject_FastCallDict(__pyx_t_3, __pyx_callargs+__pyx_t_5, (5-__pyx_t_5) | (__pyx_t_5*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET), __pyx_t_4);
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 617, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
  }
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":616
 *         return self._request_api('put', path, signed, version, **kwargs)
 * 
 *     def _delete(self, path, signed=False, version=PUBLIC_API_VERSION, **kwargs):             # <<<<<<<<<<<<<<
 *         return self._request_api('delete', path, signed, version, **kwargs)
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager._delete", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":619
 *         return self._request_api('delete', path, signed, version, **kwargs)
 * 
 *     def is_update_availabe(self):             # <<<<<<<<<<<<<<
 *         """
 *         Is a new release of this package available?
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_55is_update_availabe(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_54is_update_availabe, "\n        Is a new release of this package available?\n\n        :return: bool\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_55is_update_availabe = {"is_update_availabe", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_55is_update_availabe, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_54is_update_availabe};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_55is_update_availabe(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("is_update_availabe (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 619, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 619, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "is_update_availabe", 0) < 0) __PYX_ERR(0, 619, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("is_update_availabe", 1, 1, 1, i); __PYX_ERR(0, 619, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 619, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("is_update_availabe", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 619, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.is_update_availabe", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_54is_update_availabe(__pyx_self, __pyx_v_self);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_54is_update_availabe(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
  PyObject *__pyx_v_installed_version = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  size_t __pyx_t_3;
  int __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("is_update_availabe", 0);

  /* "unicorn_binance_rest_api/manager.py":625
 *         :return: bool
 *         """
 *         installed_version = self.get_version()             # <<<<<<<<<<<<<<
 *         if ".dev" in installed_version:
 *             installed_version = installed_version[:-4]
*/
  __pyx_t_2 = __pyx_v_self;
  __Pyx_INCREF(__pyx_t_2);
  __pyx_t_3 = 0;
  {
    PyObject *__pyx_callargs[2] = {__pyx_t_2, NULL};
    __pyx_t_1 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_get_version, __pyx_callargs+__pyx_t_3, (1-__pyx_t_3) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 625, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
  }
  __pyx_v_installed_version = __pyx_t_1;
  __pyx_t_1 = 0;

  /* "unicorn_binance_rest_api/manager.py":626
 *         """
 *         installed_version = self.get_version()
 *         if ".dev" in installed_version:             # <<<<<<<<<<<<<<
 *             installed_version = installed_version[:-4]
 *         if self.get_latest_version() == installed_version:
*/
  __pyx_t_4 = (__Pyx_PySequence_ContainsTF(__pyx_mstate_global->__pyx_kp_u_dev, __pyx_v_installed_version, Py_EQ)); if (unlikely((__pyx_t_4 < 0))) __PYX_ERR(0, 626, __pyx_L1_error)
  if (__pyx_t_4) {

    /* "unicorn_binance_rest_api/manager.py":627
 *         installed_version = self.get_version()
 *         if ".dev" in installed_version:
 *             installed_version = installed_version[:-4]             # <<<<<<<<<<<<<<
 *         if self.get_latest_version() == installed_version:
 *             return False
*/
    __pyx_t_1 = __Pyx_PyObject_GetSlice(__pyx_v_installed_version, 0, -4L, NULL, NULL, &__pyx_mstate_global->__pyx_slice[0], 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 627, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __Pyx_DECREF_SET(__pyx_v_installed_version, __pyx_t_1);
    __pyx_t_1 = 0;

    /* "unicorn_binance_rest_api/manager.py":626
 *         """
 *         installed_version = self.get_version()
 *         if ".dev" in installed_version:             # <<<<<<<<<<<<<<
 *             installed_version = installed_version[:-4]
 *         if self.get_latest_version() == installed_version:
*/
  }

  /* "unicorn_binance_rest_api/manager.py":628
 *         if ".dev" in installed_version:
 *             installed_version = installed_version[:-4]
 *         if self.get_latest_version() == installed_version:             # <<<<<<<<<<<<<<
 *             return False
 *         elif self.get_latest_version() == "unknown":
*/
  __pyx_t_2 = __pyx_v_self;
  __Pyx_INCREF(__pyx_t_2);
  __pyx_t_3 = 0;
  {
    PyObject *__pyx_callargs[2] = {__pyx_t_2, NULL};
    __pyx_t_1 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_get_latest_version, __pyx_callargs+__pyx_t_3, (1-__pyx_t_3) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 628, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
  }
  __pyx_t_2 = PyObject_RichCompare(__pyx_t_1, __pyx_v_installed_version, Py_EQ); __Pyx_XGOTREF(__pyx_t_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 628, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely((__pyx_t_4 < 0))) __PYX_ERR(0, 628, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  if (__pyx_t_4) {

    /* "unicorn_binance_rest_api/manager.py":629
 *             installed_version = installed_version[:-4]
 *         if self.get_latest_version() == installed_version:
 *             return False             # <<<<<<<<<<<<<<
 *         elif self.get_latest_version() == "unknown":
 *             return False
*/
    __Pyx_XDECREF(__pyx_r);
    __Pyx_INCREF(Py_False);
    __pyx_r = Py_False;
    goto __pyx_L0;

    /* "unicorn_binance_rest_api/manager.py":628
 *         if ".dev" in installed_version:
 *             installed_version = installed_version[:-4]
 *         if self.get_latest_version() == installed_version:             # <<<<<<<<<<<<<<
 *             return False
 *         elif self.get_latest_version() == "unknown":
*/
  }

  /* "unicorn_binance_rest_api/manager.py":630
 *         if self.get_latest_version() == installed_version:
 *             return False
 *         elif self.get_latest_version() == "unknown":             # <<<<<<<<<<<<<<
 *             return False
 *         else:
*/
  __pyx_t_1 = __pyx_v_self;
  __Pyx_INCREF(__pyx_t_1);
  __pyx_t_3 = 0;
  {
    PyObject *__pyx_callargs[2] = {__pyx_t_1, NULL};
    __pyx_t_2 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_get_latest_version, __pyx_callargs+__pyx_t_3, (1-__pyx_t_3) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
    __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
    if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 630, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
  }
  __pyx_t_4 = (__Pyx_PyUnicode_Equals(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_unknown, Py_EQ)); if (unlikely((__pyx_t_4 < 0))) __PYX_ERR(0, 630, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  if (__pyx_t_4) {

    /* "unicorn_binance_rest_api/manager.py":631
 *             return False
 *         elif self.get_latest_version() == "unknown":
 *             return False             # <<<<<<<<<<<<<<
 *         else:
 *             return True
*/
    __Pyx_XDECREF(__pyx_r);
    __Pyx_INCREF(Py_False);
    __pyx_r = Py_False;
    goto __pyx_L0;

    /* "unicorn_binance_rest_api/manager.py":630
 *         if self.get_latest_version() == installed_version:
 *             return False
 *         elif self.get_latest_version() == "unknown":             # <<<<<<<<<<<<<<
 *             return False
 *         else:
*/
  }

  /* "unicorn_binance_rest_api/manager.py":633
 *             return False
 *         else:
 *             return True             # <<<<<<<<<<<<<<
 * 
 *     def get_version(self):
*/
  /*else*/ {
    __Pyx_XDECREF(__pyx_r);
    __Pyx_INCREF(Py_True);
    __pyx_r = Py_True;
    goto __pyx_L0;
  }

  /* "unicorn_binance_rest_api/manager.py":619
 *         return self._request_api('delete', path, signed, version, **kwargs)
 * 
 *     def is_update_availabe(self):             # <<<<<<<<<<<<<<
 *         """
 *         Is a new release of this package available?
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.is_update_availabe", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_installed_version);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":635
 *             return True
 * 
 *     def get_version(self):             # <<<<<<<<<<<<<<
 *         """
 *         Get the package/module version
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_57get_version(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_56get_version, "\n        Get the package/module version\n\n        :return: str\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_57get_version = {"get_version", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_57get_version, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_56get_version};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_57get_version(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_version (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 635, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 635, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "get_version", 0) < 0) __PYX_ERR(0, 635, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_version", 1, 1, 1, i); __PYX_ERR(0, 635, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 635, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_version", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 635, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_version", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_56get_version(__pyx_self, __pyx_v_self);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_56get_version(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_version", 0);

  /* "unicorn_binance_rest_api/manager.py":641
 *         :return: str
 *         """
 *         return self.version             # <<<<<<<<<<<<<<
 * 
 *     def get_latest_version(self) -> Optional[str]:
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_version_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 641, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":635
 *             return True
 * 
 *     def get_version(self):             # <<<<<<<<<<<<<<
 *         """
 *         Get the package/module version
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_version", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":643
 *         return self.version
 * 
 *     def get_latest_version(self) -> Optional[str]:             # <<<<<<<<<<<<<<
 *         """
 *         Get the version of the latest available release (cache time 1 hour)
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_59get_latest_version(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_58get_latest_version, "\n        Get the version of the latest available release (cache time 1 hour)\n        :return: str or False\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_59get_latest_version = {"get_latest_version", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_59get_latest_version, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_58get_latest_version};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_59get_latest_version(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_latest_version (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 643, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 643, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "get_latest_version", 0) < 0) __PYX_ERR(0, 643, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_latest_version", 1, 1, 1, i); __PYX_ERR(0, 643, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 643, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_latest_version", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 643, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_latest_version", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_58get_latest_version(__pyx_self, __pyx_v_self);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_58get_latest_version(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  PyObject *__pyx_t_4 = NULL;
  PyObject *__pyx_t_5 = NULL;
  size_t __pyx_t_6;
  int __pyx_t_7;
  PyObject *__pyx_t_8 = NULL;
  PyObject *__pyx_t_9 = NULL;
  PyObject *__pyx_t_10 = NULL;
  PyObject *__pyx_t_11 = NULL;
  int __pyx_t_12;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_latest_version", 0);

  /* "unicorn_binance_rest_api/manager.py":649
 *         """
 *         # Do a fresh request if status is None or last timestamp is older 1 hour
 *         if self.last_update_check_github['status'].get('tag_name') is None or \             # <<<<<<<<<<<<<<
 *                 (self.last_update_check_github['timestamp']+(60*60) < time.time()):
 *             self.last_update_check_github['status'] = self.get_latest_release_info()
*/
  __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_last_update_check_github); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 649, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __pyx_t_5 = __Pyx_PyObject_Dict_GetItem(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_status); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 649, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
  __pyx_t_3 = __pyx_t_5;
  __Pyx_INCREF(__pyx_t_3);
  __pyx_t_6 = 0;
  {
    PyObject *__pyx_callargs[2] = {__pyx_t_3, __pyx_mstate_global->__pyx_n_u_tag_name};
    __pyx_t_2 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_get, __pyx_callargs+__pyx_t_6, (2-__pyx_t_6) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
    __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 649, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
  }
  __pyx_t_7 = (__pyx_t_2 == Py_None);
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  if (!__pyx_t_7) {
  } else {
    __pyx_t_1 = __pyx_t_7;
    goto __pyx_L4_bool_binop_done;
  }

  /* "unicorn_binance_rest_api/manager.py":650
 *         # Do a fresh request if status is None or last timestamp is older 1 hour
 *         if self.last_update_check_github['status'].get('tag_name') is None or \
 *                 (self.last_update_check_github['timestamp']+(60*60) < time.time()):             # <<<<<<<<<<<<<<
 *             self.last_update_check_github['status'] = self.get_latest_release_info()
 *         if self.last_update_check_github['status']:
*/
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_last_update_check_github); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 650, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __pyx_t_5 = __Pyx_PyObject_Dict_GetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_timestamp); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 650, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_t_2 = __Pyx_PyLong_AddObjC(__pyx_t_5, __pyx_mstate_global->__pyx_int_3600, 0xe10, 0, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 650, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  __pyx_t_3 = NULL;
  __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_time); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 650, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_time); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 650, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
  __pyx_t_6 = 1;
  #if CYTHON_UNPACK_METHODS
  if (unlikely(PyMethod_Check(__pyx_t_8))) {
    __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_8);
    assert(__pyx_t_3);
    PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_8);
    __Pyx_INCREF(__pyx_t_3);
    __Pyx_INCREF(__pyx__function);
    __Pyx_DECREF_SET(__pyx_t_8, __pyx__function);
    __pyx_t_6 = 0;
  }
  #endif
  {
    PyObject *__pyx_callargs[2] = {__pyx_t_3, NULL};
    __pyx_t_5 = __Pyx_PyObject_FastCall(__pyx_t_8, __pyx_callargs+__pyx_t_6, (1-__pyx_t_6) | (__pyx_t_6*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
    __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
    if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 650, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
  }
  __pyx_t_8 = PyObject_RichCompare(__pyx_t_2, __pyx_t_5, Py_LT); __Pyx_XGOTREF(__pyx_t_8); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 650, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_8); if (unlikely((__pyx_t_7 < 0))) __PYX_ERR(0, 650, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
  __pyx_t_1 = __pyx_t_7;
  __pyx_L4_bool_binop_done:;

  /* "unicorn_binance_rest_api/manager.py":649
 *         """
 *         # Do a fresh request if status is None or last timestamp is older 1 hour
 *         if self.last_update_check_github['status'].get('tag_name') is None or \             # <<<<<<<<<<<<<<
 *                 (self.last_update_check_github['timestamp']+(60*60) < time.time()):
 *             self.last_update_check_github['status'] = self.get_latest_release_info()
*/
  if (__pyx_t_1) {

    /* "unicorn_binance_rest_api/manager.py":651
 *         if self.last_update_check_github['status'].get('tag_name') is None or \
 *                 (self.last_update_check_github['timestamp']+(60*60) < time.time()):
 *             self.last_update_check_github['status'] = self.get_latest_release_info()             # <<<<<<<<<<<<<<
 *         if self.last_update_check_github['status']:
 *             try:
*/
    __pyx_t_5 = __pyx_v_self;
    __Pyx_INCREF(__pyx_t_5);
    __pyx_t_6 = 0;
    {
      PyObject *__pyx_callargs[2] = {__pyx_t_5, NULL};
      __pyx_t_8 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_get_latest_release_info, __pyx_callargs+__pyx_t_6, (1-__pyx_t_6) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
      __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
      if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 651, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_8);
    }
    __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_last_update_check_github); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 651, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    if (unlikely((PyObject_SetItem(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_status, __pyx_t_8) < 0))) __PYX_ERR(0, 651, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

    /* "unicorn_binance_rest_api/manager.py":649
 *         """
 *         # Do a fresh request if status is None or last timestamp is older 1 hour
 *         if self.last_update_check_github['status'].get('tag_name') is None or \             # <<<<<<<<<<<<<<
 *                 (self.last_update_check_github['timestamp']+(60*60) < time.time()):
 *             self.last_update_check_github['status'] = self.get_latest_release_info()
*/
  }

  /* "unicorn_binance_rest_api/manager.py":652
 *                 (self.last_update_check_github['timestamp']+(60*60) < time.time()):
 *             self.last_update_check_github['status'] = self.get_latest_release_info()
 *         if self.last_update_check_github['status']:             # <<<<<<<<<<<<<<
 *             try:
 *                 return self.last_update_check_github['status']["tag_name"]
*/
  __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_last_update_check_github); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 652, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  __pyx_t_5 = __Pyx_PyObject_Dict_GetItem(__pyx_t_8, __pyx_mstate_global->__pyx_n_u_status); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 652, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
  __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 652, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  if (__pyx_t_1) {

    /* "unicorn_binance_rest_api/manager.py":653
 *             self.last_update_check_github['status'] = self.get_latest_release_info()
 *         if self.last_update_check_github['status']:
 *             try:             # <<<<<<<<<<<<<<
 *                 return self.last_update_check_github['status']["tag_name"]
 *             except KeyError:
*/
    {
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __Pyx_ExceptionSave(&__pyx_t_9, &__pyx_t_10, &__pyx_t_11);
      __Pyx_XGOTREF(__pyx_t_9);
      __Pyx_XGOTREF(__pyx_t_10);
      __Pyx_XGOTREF(__pyx_t_11);
      /*try:*/ {

        /* "unicorn_binance_rest_api/manager.py":654
 *         if self.last_update_check_github['status']:
 *             try:
 *                 return self.last_update_check_github['status']["tag_name"]             # <<<<<<<<<<<<<<
 *             except KeyError:
 *                 return "unknown"
*/
        __Pyx_XDECREF(__pyx_r);
        __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_last_update_check_github); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 654, __pyx_L7_error)
        __Pyx_GOTREF(__pyx_t_5);
        __pyx_t_8 = __Pyx_PyObject_Dict_GetItem(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_status); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 654, __pyx_L7_error)
        __Pyx_GOTREF(__pyx_t_8);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __pyx_t_5 = __Pyx_PyObject_Dict_GetItem(__pyx_t_8, __pyx_mstate_global->__pyx_n_u_tag_name); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 654, __pyx_L7_error)
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        if (!(likely(PyUnicode_CheckExact(__pyx_t_5))||((__pyx_t_5) == Py_None) || __Pyx_RaiseUnexpectedTypeError("str", __pyx_t_5))) __PYX_ERR(0, 654, __pyx_L7_error)
        __pyx_r = ((PyObject*)__pyx_t_5);
        __pyx_t_5 = 0;
        goto __pyx_L11_try_return;

        /* "unicorn_binance_rest_api/manager.py":653
 *             self.last_update_check_github['status'] = self.get_latest_release_info()
 *         if self.last_update_check_github['status']:
 *             try:             # <<<<<<<<<<<<<<
 *                 return self.last_update_check_github['status']["tag_name"]
 *             except KeyError:
*/
      }
      __pyx_L7_error:;
      __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;

      /* "unicorn_binance_rest_api/manager.py":655
 *             try:
 *                 return self.last_update_check_github['status']["tag_name"]
 *             except KeyError:             # <<<<<<<<<<<<<<
 *                 return "unknown"
 *         else:
*/
      __pyx_t_12 = __Pyx_PyErr_ExceptionMatches(__pyx_builtin_KeyError);
      if (__pyx_t_12) {
        __Pyx_ErrRestore(0,0,0);

        /* "unicorn_binance_rest_api/manager.py":656
 *                 return self.last_update_check_github['status']["tag_name"]
 *             except KeyError:
 *                 return "unknown"             # <<<<<<<<<<<<<<
 *         else:
 *             return "unknown"
*/
        __Pyx_XDECREF(__pyx_r);
        __Pyx_INCREF(__pyx_mstate_global->__pyx_n_u_unknown);
        __pyx_r = __pyx_mstate_global->__pyx_n_u_unknown;
        goto __pyx_L10_except_return;
      }
      goto __pyx_L9_except_error;

      /* "unicorn_binance_rest_api/manager.py":653
 *             self.last_update_check_github['status'] = self.get_latest_release_info()
 *         if self.last_update_check_github['status']:
 *             try:             # <<<<<<<<<<<<<<
 *                 return self.last_update_check_github['status']["tag_name"]
 *             except KeyError:
*/
      __pyx_L9_except_error:;
      __Pyx_XGIVEREF(__pyx_t_9);
      __Pyx_XGIVEREF(__pyx_t_10);
      __Pyx_XGIVEREF(__pyx_t_11);
      __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_10, __pyx_t_11);
      goto __pyx_L1_error;
      __pyx_L11_try_return:;
      __Pyx_XGIVEREF(__pyx_t_9);
      __Pyx_XGIVEREF(__pyx_t_10);
      __Pyx_XGIVEREF(__pyx_t_11);
      __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_10, __pyx_t_11);
      goto __pyx_L0;
      __pyx_L10_except_return:;
      __Pyx_XGIVEREF(__pyx_t_9);
      __Pyx_XGIVEREF(__pyx_t_10);
      __Pyx_XGIVEREF(__pyx_t_11);
      __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_10, __pyx_t_11);
      goto __pyx_L0;
    }

    /* "unicorn_binance_rest_api/manager.py":652
 *                 (self.last_update_check_github['timestamp']+(60*60) < time.time()):
 *             self.last_update_check_github['status'] = self.get_latest_release_info()
 *         if self.last_update_check_github['status']:             # <<<<<<<<<<<<<<
 *             try:
 *                 return self.last_update_check_github['status']["tag_name"]
*/
  }

  /* "unicorn_binance_rest_api/manager.py":658
 *                 return "unknown"
 *         else:
 *             return "unknown"             # <<<<<<<<<<<<<<
 * 
 *     def get_latest_release_info(self):
*/
  /*else*/ {
    __Pyx_XDECREF(__pyx_r);
    __Pyx_INCREF(__pyx_mstate_global->__pyx_n_u_unknown);
    __pyx_r = __pyx_mstate_global->__pyx_n_u_unknown;
    goto __pyx_L0;
  }

  /* "unicorn_binance_rest_api/manager.py":643
 *         return self.version
 * 
 *     def get_latest_version(self) -> Optional[str]:             # <<<<<<<<<<<<<<
 *         """
 *         Get the version of the latest available release (cache time 1 hour)
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_8);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_latest_version", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":660
 *             return "unknown"
 * 
 *     def get_latest_release_info(self):             # <<<<<<<<<<<<<<
 *         """
 *         Get infos about the latest available release
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_61get_latest_release_info(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_60get_latest_release_info, "\n        Get infos about the latest available release\n        :return: dict or False\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_61get_latest_release_info = {"get_latest_release_info", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_61get_latest_release_info, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_60get_latest_release_info};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_61get_latest_release_info(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_latest_release_info (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 660, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 660, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "get_latest_release_info", 0) < 0) __PYX_ERR(0, 660, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_latest_release_info", 1, 1, 1, i); __PYX_ERR(0, 660, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 660, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_latest_release_info", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 660, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_latest_release_info", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_60get_latest_release_info(__pyx_self, __pyx_v_self);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_60get_latest_release_info(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
  PyObject *__pyx_v_respond = NULL;
  PyObject *__pyx_v_latest_release_info = NULL;
  PyObject *__pyx_v_error_msg = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_t_4;
  PyObject *__pyx_t_5 = NULL;
  int __pyx_t_6;
  PyObject *__pyx_t_7 = NULL;
  PyObject *__pyx_t_8 = NULL;
  PyObject *__pyx_t_9 = NULL;
  PyObject *__pyx_t_10 = NULL;
  size_t __pyx_t_11;
  PyObject *__pyx_t_12 = NULL;
  int __pyx_t_13;
  PyObject *__pyx_t_14 = NULL;
  PyObject *__pyx_t_15 = NULL;
  int __pyx_t_16;
  char const *__pyx_t_17;
  PyObject *__pyx_t_18 = NULL;
  PyObject *__pyx_t_19 = NULL;
  PyObject *__pyx_t_20 = NULL;
  PyObject *__pyx_t_21 = NULL;
  PyObject *__pyx_t_22 = NULL;
  PyObject *__pyx_t_23 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_latest_release_info", 0);

  /* "unicorn_binance_rest_api/manager.py":665
 *         :return: dict or False
 *         """
 *         try:             # <<<<<<<<<<<<<<
 *             if self.socks5_proxy_address is not None and self.socks5_proxy_port is not None:
 *                 respond = requests.get('https://api.github.com/repos/LUCIT-Systems-and-Development/'
*/
  {
    __Pyx_PyThreadState_declare
    __Pyx_PyThreadState_assign
    __Pyx_ExceptionSave(&__pyx_t_1, &__pyx_t_2, &__pyx_t_3);
    __Pyx_XGOTREF(__pyx_t_1);
    __Pyx_XGOTREF(__pyx_t_2);
    __Pyx_XGOTREF(__pyx_t_3);
    /*try:*/ {

      /* "unicorn_binance_rest_api/manager.py":666
 *         """
 *         try:
 *             if self.socks5_proxy_address is not None and self.socks5_proxy_port is not None:             # <<<<<<<<<<<<<<
 *                 respond = requests.get('https://api.github.com/repos/LUCIT-Systems-and-Development/'
 *                                        'unicorn-binance-rest-api/releases/latest',
*/
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_socks5_proxy_address); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 666, __pyx_L3_error)
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_6 = (__pyx_t_5 != Py_None);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      if (__pyx_t_6) {
      } else {
        __pyx_t_4 = __pyx_t_6;
        goto __pyx_L10_bool_binop_done;
      }
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_socks5_proxy_port); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 666, __pyx_L3_error)
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_6 = (__pyx_t_5 != Py_None);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_t_4 = __pyx_t_6;
      __pyx_L10_bool_binop_done:;
      if (__pyx_t_4) {

        /* "unicorn_binance_rest_api/manager.py":667
 *         try:
 *             if self.socks5_proxy_address is not None and self.socks5_proxy_port is not None:
 *                 respond = requests.get('https://api.github.com/repos/LUCIT-Systems-and-Development/'             # <<<<<<<<<<<<<<
 *                                        'unicorn-binance-rest-api/releases/latest',
 *                                        proxies=self.request_socks5_proxies,
*/
        __pyx_t_7 = NULL;
        __Pyx_GetModuleGlobalName(__pyx_t_8, __pyx_mstate_global->__pyx_n_u_requests); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 667, __pyx_L3_error)
        __Pyx_GOTREF(__pyx_t_8);
        __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_mstate_global->__pyx_n_u_get); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 667, __pyx_L3_error)
        __Pyx_GOTREF(__pyx_t_9);
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

        /* "unicorn_binance_rest_api/manager.py":669
 *                 respond = requests.get('https://api.github.com/repos/LUCIT-Systems-and-Development/'
 *                                        'unicorn-binance-rest-api/releases/latest',
 *                                        proxies=self.request_socks5_proxies,             # <<<<<<<<<<<<<<
 *                                        verify=self.socks5_proxy_ssl_verification)
 *             else:
*/
        __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_socks5_proxies); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 669, __pyx_L3_error)
        __Pyx_GOTREF(__pyx_t_8);

        /* "unicorn_binance_rest_api/manager.py":670
 *                                        'unicorn-binance-rest-api/releases/latest',
 *                                        proxies=self.request_socks5_proxies,
 *                                        verify=self.socks5_proxy_ssl_verification)             # <<<<<<<<<<<<<<
 *             else:
 *                 respond = requests.get('https://api.github.com/repos/LUCIT-Systems-and-Development/'
*/
        __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_socks5_proxy_ssl_verification); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 670, __pyx_L3_error)
        __Pyx_GOTREF(__pyx_t_10);
        __pyx_t_11 = 1;
        #if CYTHON_UNPACK_METHODS
        if (unlikely(PyMethod_Check(__pyx_t_9))) {
          __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_9);
          assert(__pyx_t_7);
          PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_9);
          __Pyx_INCREF(__pyx_t_7);
          __Pyx_INCREF(__pyx__function);
          __Pyx_DECREF_SET(__pyx_t_9, __pyx__function);
          __pyx_t_11 = 0;
        }
        #endif
        {
          PyObject *__pyx_callargs[2 + ((CYTHON_VECTORCALL) ? 2 : 0)] = {__pyx_t_7, __pyx_mstate_global->__pyx_kp_u_https_api_github_com_repos_LUCIT};
          __pyx_t_12 = __Pyx_MakeVectorcallBuilderKwds(2); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 667, __pyx_L3_error)
          __Pyx_GOTREF(__pyx_t_12);
          if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_proxies, __pyx_t_8, __pyx_t_12, __pyx_callargs+2, 0) < 0) __PYX_ERR(0, 667, __pyx_L3_error)
          if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_verify, __pyx_t_10, __pyx_t_12, __pyx_callargs+2, 1) < 0) __PYX_ERR(0, 667, __pyx_L3_error)
          __pyx_t_5 = __Pyx_Object_Vectorcall_CallFromBuilder(__pyx_t_9, __pyx_callargs+__pyx_t_11, (2-__pyx_t_11) | (__pyx_t_11*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET), __pyx_t_12);
          __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
          __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
          if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 667, __pyx_L3_error)
          __Pyx_GOTREF(__pyx_t_5);
        }
        __pyx_v_respond = __pyx_t_5;
        __pyx_t_5 = 0;

        /* "unicorn_binance_rest_api/manager.py":666
 *         """
 *         try:
 *             if self.socks5_proxy_address is not None and self.socks5_proxy_port is not None:             # <<<<<<<<<<<<<<
 *                 respond = requests.get('https://api.github.com/repos/LUCIT-Systems-and-Development/'
 *                                        'unicorn-binance-rest-api/releases/latest',
*/
        goto __pyx_L9;
      }

      /* "unicorn_binance_rest_api/manager.py":672
 *                                        verify=self.socks5_proxy_ssl_verification)
 *             else:
 *                 respond = requests.get('https://api.github.com/repos/LUCIT-Systems-and-Development/'             # <<<<<<<<<<<<<<
 *                                        'unicorn-binance-rest-api/releases/latest')
 *             latest_release_info = respond.json()
*/
      /*else*/ {
        __pyx_t_9 = NULL;
        __Pyx_GetModuleGlobalName(__pyx_t_12, __pyx_mstate_global->__pyx_n_u_requests); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 672, __pyx_L3_error)
        __Pyx_GOTREF(__pyx_t_12);
        __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_t_12, __pyx_mstate_global->__pyx_n_u_get); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 672, __pyx_L3_error)
        __Pyx_GOTREF(__pyx_t_10);
        __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
        __pyx_t_11 = 1;
        #if CYTHON_UNPACK_METHODS
        if (unlikely(PyMethod_Check(__pyx_t_10))) {
          __pyx_t_9 = PyMethod_GET_SELF(__pyx_t_10);
          assert(__pyx_t_9);
          PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_10);
          __Pyx_INCREF(__pyx_t_9);
          __Pyx_INCREF(__pyx__function);
          __Pyx_DECREF_SET(__pyx_t_10, __pyx__function);
          __pyx_t_11 = 0;
        }
        #endif
        {
          PyObject *__pyx_callargs[2] = {__pyx_t_9, __pyx_mstate_global->__pyx_kp_u_https_api_github_com_repos_LUCIT};
          __pyx_t_5 = __Pyx_PyObject_FastCall(__pyx_t_10, __pyx_callargs+__pyx_t_11, (2-__pyx_t_11) | (__pyx_t_11*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
          __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 672, __pyx_L3_error)
          __Pyx_GOTREF(__pyx_t_5);
        }
        __pyx_v_respond = __pyx_t_5;
        __pyx_t_5 = 0;
      }
      __pyx_L9:;

      /* "unicorn_binance_rest_api/manager.py":674
 *                 respond = requests.get('https://api.github.com/repos/LUCIT-Systems-and-Development/'
 *                                        'unicorn-binance-rest-api/releases/latest')
 *             latest_release_info = respond.json()             # <<<<<<<<<<<<<<
 *             return latest_release_info
 *         except Exception as error_msg:
*/
      __pyx_t_10 = __pyx_v_respond;
      __Pyx_INCREF(__pyx_t_10);
      __pyx_t_11 = 0;
      {
        PyObject *__pyx_callargs[2] = {__pyx_t_10, NULL};
        __pyx_t_5 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_json, __pyx_callargs+__pyx_t_11, (1-__pyx_t_11) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
        __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
        if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 674, __pyx_L3_error)
        __Pyx_GOTREF(__pyx_t_5);
      }
      __pyx_v_latest_release_info = __pyx_t_5;
      __pyx_t_5 = 0;

      /* "unicorn_binance_rest_api/manager.py":675
 *                                        'unicorn-binance-rest-api/releases/latest')
 *             latest_release_info = respond.json()
 *             return latest_release_info             # <<<<<<<<<<<<<<
 *         except Exception as error_msg:
 *             logger.debug(f"BinanceRestApiManager.get_latest_release_info() - Exception: {error_msg}")
*/
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(__pyx_v_latest_release_info);
      __pyx_r = __pyx_v_latest_release_info;
      goto __pyx_L7_try_return;

      /* "unicorn_binance_rest_api/manager.py":665
 *         :return: dict or False
 *         """
 *         try:             # <<<<<<<<<<<<<<
 *             if self.socks5_proxy_address is not None and self.socks5_proxy_port is not None:
 *                 respond = requests.get('https://api.github.com/repos/LUCIT-Systems-and-Development/'
*/
    }
    __pyx_L3_error:;
    __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
    __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
    __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
    __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
    __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
    __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;

    /* "unicorn_binance_rest_api/manager.py":676
 *             latest_release_info = respond.json()
 *             return latest_release_info
 *         except Exception as error_msg:             # <<<<<<<<<<<<<<
 *             logger.debug(f"BinanceRestApiManager.get_latest_release_info() - Exception: {error_msg}")
 *             return False
*/
    __pyx_t_13 = __Pyx_PyErr_ExceptionMatches(((PyObject *)(((PyTypeObject*)PyExc_Exception))));
    if (__pyx_t_13) {
      __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_latest_release_info", __pyx_clineno, __pyx_lineno, __pyx_filename);
      if (__Pyx_GetException(&__pyx_t_5, &__pyx_t_10, &__pyx_t_9) < 0) __PYX_ERR(0, 676, __pyx_L5_except_error)
      __Pyx_XGOTREF(__pyx_t_5);
      __Pyx_XGOTREF(__pyx_t_10);
      __Pyx_XGOTREF(__pyx_t_9);
      __Pyx_INCREF(__pyx_t_10);
      __pyx_v_error_msg = __pyx_t_10;
      /*try:*/ {

        /* "unicorn_binance_rest_api/manager.py":677
 *             return latest_release_info
 *         except Exception as error_msg:
 *             logger.debug(f"BinanceRestApiManager.get_latest_release_info() - Exception: {error_msg}")             # <<<<<<<<<<<<<<
 *             return False
 * 
*/
        __pyx_t_8 = NULL;
        __Pyx_GetModuleGlobalName(__pyx_t_7, __pyx_mstate_global->__pyx_n_u_logger); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 677, __pyx_L17_error)
        __Pyx_GOTREF(__pyx_t_7);
        __pyx_t_14 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_mstate_global->__pyx_n_u_debug); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 677, __pyx_L17_error)
        __Pyx_GOTREF(__pyx_t_14);
        __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        __pyx_t_7 = __Pyx_PyObject_FormatSimple(__pyx_v_error_msg, __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 677, __pyx_L17_error)
        __Pyx_GOTREF(__pyx_t_7);
        __pyx_t_15 = __Pyx_PyUnicode_Concat(__pyx_mstate_global->__pyx_kp_u_BinanceRestApiManager_get_latest, __pyx_t_7); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 677, __pyx_L17_error)
        __Pyx_GOTREF(__pyx_t_15);
        __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        __pyx_t_11 = 1;
        #if CYTHON_UNPACK_METHODS
        if (unlikely(PyMethod_Check(__pyx_t_14))) {
          __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_14);
          assert(__pyx_t_8);
          PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_14);
          __Pyx_INCREF(__pyx_t_8);
          __Pyx_INCREF(__pyx__function);
          __Pyx_DECREF_SET(__pyx_t_14, __pyx__function);
          __pyx_t_11 = 0;
        }
        #endif
        {
          PyObject *__pyx_callargs[2] = {__pyx_t_8, __pyx_t_15};
          __pyx_t_12 = __Pyx_PyObject_FastCall(__pyx_t_14, __pyx_callargs+__pyx_t_11, (2-__pyx_t_11) | (__pyx_t_11*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
          __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
          __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
          __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
          if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 677, __pyx_L17_error)
          __Pyx_GOTREF(__pyx_t_12);
        }
        __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;

        /* "unicorn_binance_rest_api/manager.py":678
 *         except Exception as error_msg:
 *             logger.debug(f"BinanceRestApiManager.get_latest_release_info() - Exception: {error_msg}")
 *             return False             # <<<<<<<<<<<<<<
 * 
 *     def get_user_agent(self):
*/
        __Pyx_XDECREF(__pyx_r);
        __Pyx_INCREF(Py_False);
        __pyx_r = Py_False;
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
        goto __pyx_L16_return;
      }

      /* "unicorn_binance_rest_api/manager.py":676
 *             latest_release_info = respond.json()
 *             return latest_release_info
 *         except Exception as error_msg:             # <<<<<<<<<<<<<<
 *             logger.debug(f"BinanceRestApiManager.get_latest_release_info() - Exception: {error_msg}")
 *             return False
*/
      /*finally:*/ {
        __pyx_L17_error:;
        /*exception exit:*/{
          __Pyx_PyThreadState_declare
          __Pyx_PyThreadState_assign
          __pyx_t_18 = 0; __pyx_t_19 = 0; __pyx_t_20 = 0; __pyx_t_21 = 0; __pyx_t_22 = 0; __pyx_t_23 = 0;
          __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
          __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;
          __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
          __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
          __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
           __Pyx_ExceptionSwap(&__pyx_t_21, &__pyx_t_22, &__pyx_t_23);
          if ( unlikely(__Pyx_GetException(&__pyx_t_18, &__pyx_t_19, &__pyx_t_20) < 0)) __Pyx_ErrFetch(&__pyx_t_18, &__pyx_t_19, &__pyx_t_20);
          __Pyx_XGOTREF(__pyx_t_18);
          __Pyx_XGOTREF(__pyx_t_19);
          __Pyx_XGOTREF(__pyx_t_20);
          __Pyx_XGOTREF(__pyx_t_21);
          __Pyx_XGOTREF(__pyx_t_22);
          __Pyx_XGOTREF(__pyx_t_23);
          __pyx_t_13 = __pyx_lineno; __pyx_t_16 = __pyx_clineno; __pyx_t_17 = __pyx_filename;
          {
            __Pyx_DECREF(__pyx_v_error_msg); __pyx_v_error_msg = 0;
          }
          __Pyx_XGIVEREF(__pyx_t_21);
          __Pyx_XGIVEREF(__pyx_t_22);
          __Pyx_XGIVEREF(__pyx_t_23);
          __Pyx_ExceptionReset(__pyx_t_21, __pyx_t_22, __pyx_t_23);
          __Pyx_XGIVEREF(__pyx_t_18);
          __Pyx_XGIVEREF(__pyx_t_19);
          __Pyx_XGIVEREF(__pyx_t_20);
          __Pyx_ErrRestore(__pyx_t_18, __pyx_t_19, __pyx_t_20);
          __pyx_t_18 = 0; __pyx_t_19 = 0; __pyx_t_20 = 0; __pyx_t_21 = 0; __pyx_t_22 = 0; __pyx_t_23 = 0;
          __pyx_lineno = __pyx_t_13; __pyx_clineno = __pyx_t_16; __pyx_filename = __pyx_t_17;
          goto __pyx_L5_except_error;
        }
        __pyx_L16_return: {
          __pyx_t_23 = __pyx_r;
          __pyx_r = 0;
          __Pyx_DECREF(__pyx_v_error_msg); __pyx_v_error_msg = 0;
          __pyx_r = __pyx_t_23;
          __pyx_t_23 = 0;
          goto __pyx_L6_except_return;
        }
      }
    }
    goto __pyx_L5_except_error;

    /* "unicorn_binance_rest_api/manager.py":665
 *         :return: dict or False
 *         """
 *         try:             # <<<<<<<<<<<<<<
 *             if self.socks5_proxy_address is not None and self.socks5_proxy_port is not None:
 *                 respond = requests.get('https://api.github.com/repos/LUCIT-Systems-and-Development/'
*/
    __pyx_L5_except_error:;
    __Pyx_XGIVEREF(__pyx_t_1);
    __Pyx_XGIVEREF(__pyx_t_2);
    __Pyx_XGIVEREF(__pyx_t_3);
    __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
    goto __pyx_L1_error;
    __pyx_L7_try_return:;
    __Pyx_XGIVEREF(__pyx_t_1);
    __Pyx_XGIVEREF(__pyx_t_2);
    __Pyx_XGIVEREF(__pyx_t_3);
    __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
    goto __pyx_L0;
    __pyx_L6_except_return:;
    __Pyx_XGIVEREF(__pyx_t_1);
    __Pyx_XGIVEREF(__pyx_t_2);
    __Pyx_XGIVEREF(__pyx_t_3);
    __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
    goto __pyx_L0;
  }

  /* "unicorn_binance_rest_api/manager.py":660
 *             return "unknown"
 * 
 *     def get_latest_release_info(self):             # <<<<<<<<<<<<<<
 *         """
 *         Get infos about the latest available release
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_XDECREF(__pyx_t_8);
  __Pyx_XDECREF(__pyx_t_9);
  __Pyx_XDECREF(__pyx_t_10);
  __Pyx_XDECREF(__pyx_t_12);
  __Pyx_XDECREF(__pyx_t_14);
  __Pyx_XDECREF(__pyx_t_15);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_latest_release_info", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_respond);
  __Pyx_XDECREF(__pyx_v_latest_release_info);
  __Pyx_XDECREF(__pyx_v_error_msg);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":680
 *             return False
 * 
 *     def get_user_agent(self):             # <<<<<<<<<<<<<<
 *         """
 *         Get the user_agent string "lib name + lib version + python version"
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_63get_user_agent(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_62get_user_agent, "\n        Get the user_agent string \"lib name + lib version + python version\"\n\n        :return: str - user agent\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_63get_user_agent = {"get_user_agent", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_63get_user_agent, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_62get_user_agent};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_63get_user_agent(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_user_agent (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 680, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 680, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "get_user_agent", 0) < 0) __PYX_ERR(0, 680, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_user_agent", 1, 1, 1, i); __PYX_ERR(0, 680, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 680, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_user_agent", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 680, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_user_agent", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_62get_user_agent(__pyx_self, __pyx_v_self);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_62get_user_agent(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
  PyObject *__pyx_v_user_agent = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  PyObject *__pyx_t_4 = NULL;
  PyObject *__pyx_t_5[5];
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_user_agent", 0);

  /* "unicorn_binance_rest_api/manager.py":686
 *         :return: str - user agent
 *         """
 *         user_agent = f"{self.name}_{str(self.get_version())}-python_{str(platform.python_version())}"             # <<<<<<<<<<<<<<
 *         return user_agent
 * 
*/
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_name); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 686, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyObject_FormatSimple(__pyx_t_1, __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 686, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_get_version); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 686, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_3 = __Pyx_PyObject_CallNoArg(__pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 686, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_t_1 = __Pyx_PyObject_Unicode(__pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 686, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_platform); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 686, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_python_version); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 686, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  __pyx_t_3 = __Pyx_PyObject_CallNoArg(__pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 686, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
  __pyx_t_4 = __Pyx_PyObject_Unicode(__pyx_t_3); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 686, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  __pyx_t_5[0] = __pyx_t_2;
  __pyx_t_5[1] = __pyx_mstate_global->__pyx_n_u__5;
  __pyx_t_5[2] = __pyx_t_1;
  __pyx_t_5[3] = __pyx_mstate_global->__pyx_kp_u_python;
  __pyx_t_5[4] = __pyx_t_4;
  __pyx_t_3 = __Pyx_PyUnicode_Join(__pyx_t_5, 5, __Pyx_PyUnicode_GET_LENGTH(__pyx_t_2) + 1 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_1) + 8 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_4), 127 | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_2) | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_1) | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_4));
  if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 686, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
  __pyx_v_user_agent = ((PyObject*)__pyx_t_3);
  __pyx_t_3 = 0;

  /* "unicorn_binance_rest_api/manager.py":687
 *         """
 *         user_agent = f"{self.name}_{str(self.get_version())}-python_{str(platform.python_version())}"
 *         return user_agent             # <<<<<<<<<<<<<<
 * 
 *     # Exchange Endpoints
*/
  __Pyx_XDECREF(__pyx_r);
  __Pyx_INCREF(__pyx_v_user_agent);
  __pyx_r = __pyx_v_user_agent;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":680
 *             return False
 * 
 *     def get_user_agent(self):             # <<<<<<<<<<<<<<
 *         """
 *         Get the user_agent string "lib name + lib version + python version"
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_user_agent", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_user_agent);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":690
 * 
 *     # Exchange Endpoints
 *     def get_products(self):             # <<<<<<<<<<<<<<
 *         """
 *         Return list of products currently listed on Binance
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_65get_products(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_64get_products, "\n        Return list of products currently listed on Binance\n\n        Use get_exchange_info() call instead\n\n        :returns: list - List of product dictionaries\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_65get_products = {"get_products", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_65get_products, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_64get_products};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_65get_products(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_products (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 690, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 690, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "get_products", 0) < 0) __PYX_ERR(0, 690, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_products", 1, 1, 1, i); __PYX_ERR(0, 690, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 690, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_products", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 690, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_products", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_64get_products(__pyx_self, __pyx_v_self);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_64get_products(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
  PyObject *__pyx_v_products = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_products", 0);

  /* "unicorn_binance_rest_api/manager.py":701
 * 
 *         """
 *         products = self._request_website('get', 'exchange-api/v1/public/asset-service/product/get-products')             # <<<<<<<<<<<<<<
 *         return products
 * 
*/
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_website); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 701, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[0], NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 701, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_v_products = __pyx_t_2;
  __pyx_t_2 = 0;

  /* "unicorn_binance_rest_api/manager.py":702
 *         """
 *         products = self._request_website('get', 'exchange-api/v1/public/asset-service/product/get-products')
 *         return products             # <<<<<<<<<<<<<<
 * 
 *     def get_exchange_info(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __Pyx_INCREF(__pyx_v_products);
  __pyx_r = __pyx_v_products;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":690
 * 
 *     # Exchange Endpoints
 *     def get_products(self):             # <<<<<<<<<<<<<<
 *         """
 *         Return list of products currently listed on Binance
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_products", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_products);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":704
 *         return products
 * 
 *     def get_exchange_info(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Return rate limits and list of symbols
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_67get_exchange_info(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_66get_exchange_info, "\n        Return rate limits and list of symbols\n\n        :returns: list - List of product dictionaries\n\n        .. code-block:: python\n\n            {\n                \"timezone\": \"UTC\",\n                \"serverTime\": 1508631584636,\n                \"rateLimits\": [\n                    {\n                        \"rateLimitType\": \"REQUESTS\",\n                        \"interval\": \"MINUTE\",\n                        \"limit\": 1200\n                    },\n                    {\n                        \"rateLimitType\": \"ORDERS\",\n                        \"interval\": \"SECOND\",\n                        \"limit\": 10\n                    },\n                    {\n                        \"rateLimitType\": \"ORDERS\",\n                        \"interval\": \"DAY\",\n                        \"limit\": 100000\n                    }\n                ],\n                \"exchangeFilters\": [],\n                \"symbols\": [\n                    {\n                        \"symbol\": \"ETHBTC\",\n                        \"status\": \"TRADING\",\n                        \"baseAsset\": \"ETH\",\n                        \"baseAssetPrecision\": 8,\n                        \"quoteAsset\": \"BTC\",\n                        \"quotePrecision\": 8,\n                        \"orderTypes\": [\"LIMIT\", \"MARKET\"],\n                        \"icebergAllowed\": false,\n                        \"filters\": [\n                            {\n                                \"filterType\": \"PRICE_FILTER\",\n                                \"minPrice\": \"0.00000100\",\n                                \"maxPrice\": \"100000.00000000\",\n                                \"tickSize\": \"0.00000100\"\n                            }, {\n                                \"filterType\": \"LOT_SIZE\",\n                                \"minQty\": \"0.00100000\",\n                                \"maxQty\": \"100000.00000000\",\n                                \"stepSize\": ""\"0.00100000\"\n                            }, {\n                                \"filterType\": \"MIN_NOTIONAL\",\n                                \"minNotional\": \"0.00100000\"\n                            }\n                        ]\n                    }\n                ]\n            }\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_67get_exchange_info = {"get_exchange_info", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_67get_exchange_info, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_66get_exchange_info};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_67get_exchange_info(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_exchange_info (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 704, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 704, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "get_exchange_info", 1) < 0) __PYX_ERR(0, 704, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_exchange_info", 1, 1, 1, i); __PYX_ERR(0, 704, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 704, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_exchange_info", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 704, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_exchange_info", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_66get_exchange_info(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_66get_exchange_info(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  size_t __pyx_t_4;
  PyObject *__pyx_t_5 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_exchange_info", 0);

  /* "unicorn_binance_rest_api/manager.py":767
 *         """
 * 
 *         return self._get('exchangeInfo', version=self.PRIVATE_API_VERSION, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_symbol_info(self, symbol):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_2 = __pyx_v_self;
  __Pyx_INCREF(__pyx_t_2);
  __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_PRIVATE_API_VERSION); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 767, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __pyx_t_4 = 0;
  {
    PyObject *__pyx_callargs[2 + ((CYTHON_VECTORCALL) ? 2 : 0)] = {__pyx_t_2, __pyx_mstate_global->__pyx_n_u_exchangeInfo};
    __pyx_t_5 = __Pyx_MakeVectorcallBuilderKwds(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 767, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_version_2, __pyx_t_3, __pyx_t_5, __pyx_callargs+2, 0) < 0) __PYX_ERR(0, 767, __pyx_L1_error)
    if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_data, __pyx_v_params, __pyx_t_5, __pyx_callargs+2, 1) < 0) __PYX_ERR(0, 767, __pyx_L1_error)
    __pyx_t_1 = __Pyx_Object_VectorcallMethod_CallFromBuilder(__pyx_mstate_global->__pyx_n_u_get_2, __pyx_callargs+__pyx_t_4, (2-__pyx_t_4) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET), __pyx_t_5);
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 767, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
  }
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":704
 *         return products
 * 
 *     def get_exchange_info(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Return rate limits and list of symbols
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_exchange_info", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":769
 *         return self._get('exchangeInfo', version=self.PRIVATE_API_VERSION, data=params)
 * 
 *     def get_symbol_info(self, symbol):             # <<<<<<<<<<<<<<
 *         """
 *         Return information about a symbol
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_69get_symbol_info(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_68get_symbol_info, "\n        Return information about a symbol\n\n        :param symbol: required e.g. BNBBTC\n        :type symbol: str\n\n        :returns: Dict if found, None if not\n\n        .. code-block:: python\n\n            {\n                \"symbol\": \"ETHBTC\",\n                \"status\": \"TRADING\",\n                \"baseAsset\": \"ETH\",\n                \"baseAssetPrecision\": 8,\n                \"quoteAsset\": \"BTC\",\n                \"quotePrecision\": 8,\n                \"orderTypes\": [\"LIMIT\", \"MARKET\"],\n                \"icebergAllowed\": false,\n                \"filters\": [\n                    {\n                        \"filterType\": \"PRICE_FILTER\",\n                        \"minPrice\": \"0.00000100\",\n                        \"maxPrice\": \"100000.00000000\",\n                        \"tickSize\": \"0.00000100\"\n                    }, {\n                        \"filterType\": \"LOT_SIZE\",\n                        \"minQty\": \"0.00100000\",\n                        \"maxQty\": \"100000.00000000\",\n                        \"stepSize\": \"0.00100000\"\n                    }, {\n                        \"filterType\": \"MIN_NOTIONAL\",\n                        \"minNotional\": \"0.00100000\"\n                    }\n                ]\n            }\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_69get_symbol_info = {"get_symbol_info", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_69get_symbol_info, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_68get_symbol_info};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_69get_symbol_info(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_symbol = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[2] = {0,0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_symbol_info (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,&__pyx_mstate_global->__pyx_n_u_symbol,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 769, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 769, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 769, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "get_symbol_info", 0) < 0) __PYX_ERR(0, 769, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 2; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_symbol_info", 1, 2, 2, i); __PYX_ERR(0, 769, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 2)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 769, __pyx_L3_error)
      values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 769, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
    __pyx_v_symbol = values[1];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_symbol_info", 1, 2, 2, __pyx_nargs); __PYX_ERR(0, 769, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_symbol_info", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_68get_symbol_info(__pyx_self, __pyx_v_self, __pyx_v_symbol);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_68get_symbol_info(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_symbol) {
  PyObject *__pyx_v_res = NULL;
  PyObject *__pyx_v_item = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  size_t __pyx_t_4;
  PyObject *__pyx_t_5 = NULL;
  Py_ssize_t __pyx_t_6;
  PyObject *(*__pyx_t_7)(PyObject *);
  int __pyx_t_8;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_symbol_info", 0);

  /* "unicorn_binance_rest_api/manager.py":811
 *         """
 * 
 *         res = self._get('exchangeInfo', version=self.PRIVATE_API_VERSION)             # <<<<<<<<<<<<<<
 * 
 *         for item in res['symbols']:
*/
  __pyx_t_2 = __pyx_v_self;
  __Pyx_INCREF(__pyx_t_2);
  __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_PRIVATE_API_VERSION); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 811, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __pyx_t_4 = 0;
  {
    PyObject *__pyx_callargs[2 + ((CYTHON_VECTORCALL) ? 1 : 0)] = {__pyx_t_2, __pyx_mstate_global->__pyx_n_u_exchangeInfo};
    __pyx_t_5 = __Pyx_MakeVectorcallBuilderKwds(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 811, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_version_2, __pyx_t_3, __pyx_t_5, __pyx_callargs+2, 0) < 0) __PYX_ERR(0, 811, __pyx_L1_error)
    __pyx_t_1 = __Pyx_Object_VectorcallMethod_CallFromBuilder(__pyx_mstate_global->__pyx_n_u_get_2, __pyx_callargs+__pyx_t_4, (2-__pyx_t_4) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET), __pyx_t_5);
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 811, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
  }
  __pyx_v_res = __pyx_t_1;
  __pyx_t_1 = 0;

  /* "unicorn_binance_rest_api/manager.py":813
 *         res = self._get('exchangeInfo', version=self.PRIVATE_API_VERSION)
 * 
 *         for item in res['symbols']:             # <<<<<<<<<<<<<<
 *             if item['symbol'] == symbol.upper():
 *                 return item
*/
  __pyx_t_1 = __Pyx_PyObject_Dict_GetItem(__pyx_v_res, __pyx_mstate_global->__pyx_n_u_symbols); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 813, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (likely(PyList_CheckExact(__pyx_t_1)) || PyTuple_CheckExact(__pyx_t_1)) {
    __pyx_t_5 = __pyx_t_1; __Pyx_INCREF(__pyx_t_5);
    __pyx_t_6 = 0;
    __pyx_t_7 = NULL;
  } else {
    __pyx_t_6 = -1; __pyx_t_5 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 813, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_7 = (CYTHON_COMPILING_IN_LIMITED_API) ? PyIter_Next : __Pyx_PyObject_GetIterNextFunc(__pyx_t_5); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 813, __pyx_L1_error)
  }
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  for (;;) {
    if (likely(!__pyx_t_7)) {
      if (likely(PyList_CheckExact(__pyx_t_5))) {
        {
          Py_ssize_t __pyx_temp = __Pyx_PyList_GET_SIZE(__pyx_t_5);
          #if !CYTHON_ASSUME_SAFE_SIZE
          if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 813, __pyx_L1_error)
          #endif
          if (__pyx_t_6 >= __pyx_temp) break;
        }
        __pyx_t_1 = __Pyx_PyList_GetItemRef(__pyx_t_5, __pyx_t_6);
        ++__pyx_t_6;
      } else {
        {
          Py_ssize_t __pyx_temp = __Pyx_PyTuple_GET_SIZE(__pyx_t_5);
          #if !CYTHON_ASSUME_SAFE_SIZE
          if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 813, __pyx_L1_error)
          #endif
          if (__pyx_t_6 >= __pyx_temp) break;
        }
        #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
        __pyx_t_1 = __Pyx_NewRef(PyTuple_GET_ITEM(__pyx_t_5, __pyx_t_6));
        #else
        __pyx_t_1 = __Pyx_PySequence_ITEM(__pyx_t_5, __pyx_t_6);
        #endif
        ++__pyx_t_6;
      }
      if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 813, __pyx_L1_error)
    } else {
      __pyx_t_1 = __pyx_t_7(__pyx_t_5);
      if (unlikely(!__pyx_t_1)) {
        PyObject* exc_type = PyErr_Occurred();
        if (exc_type) {
          if (unlikely(!__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) __PYX_ERR(0, 813, __pyx_L1_error)
          PyErr_Clear();
        }
        break;
      }
    }
    __Pyx_GOTREF(__pyx_t_1);
    __Pyx_XDECREF_SET(__pyx_v_item, __pyx_t_1);
    __pyx_t_1 = 0;

    /* "unicorn_binance_rest_api/manager.py":814
 * 
 *         for item in res['symbols']:
 *             if item['symbol'] == symbol.upper():             # <<<<<<<<<<<<<<
 *                 return item
 * 
*/
    __pyx_t_1 = __Pyx_PyObject_Dict_GetItem(__pyx_v_item, __pyx_mstate_global->__pyx_n_u_symbol); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 814, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_t_2 = __pyx_v_symbol;
    __Pyx_INCREF(__pyx_t_2);
    __pyx_t_4 = 0;
    {
      PyObject *__pyx_callargs[2] = {__pyx_t_2, NULL};
      __pyx_t_3 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_upper, __pyx_callargs+__pyx_t_4, (1-__pyx_t_4) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
      __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
      if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 814, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_3);
    }
    __pyx_t_2 = PyObject_RichCompare(__pyx_t_1, __pyx_t_3, Py_EQ); __Pyx_XGOTREF(__pyx_t_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 814, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely((__pyx_t_8 < 0))) __PYX_ERR(0, 814, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    if (__pyx_t_8) {

      /* "unicorn_binance_rest_api/manager.py":815
 *         for item in res['symbols']:
 *             if item['symbol'] == symbol.upper():
 *                 return item             # <<<<<<<<<<<<<<
 * 
 *         return None
*/
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(__pyx_v_item);
      __pyx_r = __pyx_v_item;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      goto __pyx_L0;

      /* "unicorn_binance_rest_api/manager.py":814
 * 
 *         for item in res['symbols']:
 *             if item['symbol'] == symbol.upper():             # <<<<<<<<<<<<<<
 *                 return item
 * 
*/
    }

    /* "unicorn_binance_rest_api/manager.py":813
 *         res = self._get('exchangeInfo', version=self.PRIVATE_API_VERSION)
 * 
 *         for item in res['symbols']:             # <<<<<<<<<<<<<<
 *             if item['symbol'] == symbol.upper():
 *                 return item
*/
  }
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;

  /* "unicorn_binance_rest_api/manager.py":817
 *                 return item
 * 
 *         return None             # <<<<<<<<<<<<<<
 * 
 *     # General Endpoints
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":769
 *         return self._get('exchangeInfo', version=self.PRIVATE_API_VERSION, data=params)
 * 
 *     def get_symbol_info(self, symbol):             # <<<<<<<<<<<<<<
 *         """
 *         Return information about a symbol
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_symbol_info", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_res);
  __Pyx_XDECREF(__pyx_v_item);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":821
 *     # General Endpoints
 * 
 *     def ping(self):             # <<<<<<<<<<<<<<
 *         """
 *         Test connectivity to the Rest API.
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_71ping(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_70ping, "\n        Test connectivity to the Rest API.\n\n        https://binance-docs.github.io/apidocs/spot/en/#test-connectivity\n\n        :returns: Empty array\n\n        .. code-block:: python\n\n            {}\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_71ping = {"ping", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_71ping, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_70ping};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_71ping(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("ping (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 821, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 821, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "ping", 0) < 0) __PYX_ERR(0, 821, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("ping", 1, 1, 1, i); __PYX_ERR(0, 821, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 821, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("ping", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 821, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.ping", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_70ping(__pyx_self, __pyx_v_self);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_70ping(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  size_t __pyx_t_4;
  PyObject *__pyx_t_5 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("ping", 0);

  /* "unicorn_binance_rest_api/manager.py":836
 * 
 *         """
 *         return self._get('ping', version=self.PRIVATE_API_VERSION)             # <<<<<<<<<<<<<<
 * 
 *     def get_server_time(self):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_2 = __pyx_v_self;
  __Pyx_INCREF(__pyx_t_2);
  __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_PRIVATE_API_VERSION); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 836, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __pyx_t_4 = 0;
  {
    PyObject *__pyx_callargs[2 + ((CYTHON_VECTORCALL) ? 1 : 0)] = {__pyx_t_2, __pyx_mstate_global->__pyx_n_u_ping};
    __pyx_t_5 = __Pyx_MakeVectorcallBuilderKwds(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 836, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_version_2, __pyx_t_3, __pyx_t_5, __pyx_callargs+2, 0) < 0) __PYX_ERR(0, 836, __pyx_L1_error)
    __pyx_t_1 = __Pyx_Object_VectorcallMethod_CallFromBuilder(__pyx_mstate_global->__pyx_n_u_get_2, __pyx_callargs+__pyx_t_4, (2-__pyx_t_4) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET), __pyx_t_5);
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 836, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
  }
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":821
 *     # General Endpoints
 * 
 *     def ping(self):             # <<<<<<<<<<<<<<
 *         """
 *         Test connectivity to the Rest API.
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.ping", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":838
 *         return self._get('ping', version=self.PRIVATE_API_VERSION)
 * 
 *     def get_server_time(self):             # <<<<<<<<<<<<<<
 *         """
 *         Test connectivity to the Rest API and get the current server time.
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_73get_server_time(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_72get_server_time, "\n        Test connectivity to the Rest API and get the current server time.\n\n        https://binance-docs.github.io/apidocs/spot/en/#check-server-time\n\n        :returns: Current server time\n\n        .. code-block:: python\n\n            {\n                \"serverTime\": 1499827319559\n            }\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_73get_server_time = {"get_server_time", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_73get_server_time, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_72get_server_time};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_73get_server_time(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_server_time (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 838, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 838, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "get_server_time", 0) < 0) __PYX_ERR(0, 838, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_server_time", 1, 1, 1, i); __PYX_ERR(0, 838, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 838, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_server_time", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 838, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_server_time", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_72get_server_time(__pyx_self, __pyx_v_self);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_72get_server_time(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  size_t __pyx_t_4;
  PyObject *__pyx_t_5 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_server_time", 0);

  /* "unicorn_binance_rest_api/manager.py":855
 * 
 *         """
 *         return self._get('time', version=self.PRIVATE_API_VERSION)             # <<<<<<<<<<<<<<
 * 
 *     # Market Data Endpoints
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_2 = __pyx_v_self;
  __Pyx_INCREF(__pyx_t_2);
  __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_PRIVATE_API_VERSION); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 855, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __pyx_t_4 = 0;
  {
    PyObject *__pyx_callargs[2 + ((CYTHON_VECTORCALL) ? 1 : 0)] = {__pyx_t_2, __pyx_mstate_global->__pyx_n_u_time};
    __pyx_t_5 = __Pyx_MakeVectorcallBuilderKwds(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 855, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_version_2, __pyx_t_3, __pyx_t_5, __pyx_callargs+2, 0) < 0) __PYX_ERR(0, 855, __pyx_L1_error)
    __pyx_t_1 = __Pyx_Object_VectorcallMethod_CallFromBuilder(__pyx_mstate_global->__pyx_n_u_get_2, __pyx_callargs+__pyx_t_4, (2-__pyx_t_4) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET), __pyx_t_5);
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 855, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
  }
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":838
 *         return self._get('ping', version=self.PRIVATE_API_VERSION)
 * 
 *     def get_server_time(self):             # <<<<<<<<<<<<<<
 *         """
 *         Test connectivity to the Rest API and get the current server time.
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_server_time", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":859
 *     # Market Data Endpoints
 * 
 *     def get_all_tickers(self):             # <<<<<<<<<<<<<<
 *         """
 *         Latest price for all symbols.
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_75get_all_tickers(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_74get_all_tickers, "\n        Latest price for all symbols.\n\n        https://www.binance.com/restapipub.html#symbols-price-ticker\n\n        :returns: List of market tickers\n\n        .. code-block:: python\n\n            [\n                {\n                    \"symbol\": \"LTCBTC\",\n                    \"price\": \"4.00000200\"\n                },\n                {\n                    \"symbol\": \"ETHBTC\",\n                    \"price\": \"0.07946600\"\n                }\n            ]\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_75get_all_tickers = {"get_all_tickers", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_75get_all_tickers, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_74get_all_tickers};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_75get_all_tickers(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_all_tickers (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 859, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 859, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "get_all_tickers", 0) < 0) __PYX_ERR(0, 859, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_all_tickers", 1, 1, 1, i); __PYX_ERR(0, 859, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 859, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_all_tickers", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 859, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_all_tickers", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_74get_all_tickers(__pyx_self, __pyx_v_self);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_74get_all_tickers(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  size_t __pyx_t_4;
  PyObject *__pyx_t_5 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_all_tickers", 0);

  /* "unicorn_binance_rest_api/manager.py":883
 * 
 *         """
 *         return self._get('ticker/price', version=self.PRIVATE_API_VERSION)             # <<<<<<<<<<<<<<
 * 
 *     def get_orderbook_tickers(self):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_2 = __pyx_v_self;
  __Pyx_INCREF(__pyx_t_2);
  __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_PRIVATE_API_VERSION); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 883, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __pyx_t_4 = 0;
  {
    PyObject *__pyx_callargs[2 + ((CYTHON_VECTORCALL) ? 1 : 0)] = {__pyx_t_2, __pyx_mstate_global->__pyx_kp_u_ticker_price};
    __pyx_t_5 = __Pyx_MakeVectorcallBuilderKwds(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 883, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_version_2, __pyx_t_3, __pyx_t_5, __pyx_callargs+2, 0) < 0) __PYX_ERR(0, 883, __pyx_L1_error)
    __pyx_t_1 = __Pyx_Object_VectorcallMethod_CallFromBuilder(__pyx_mstate_global->__pyx_n_u_get_2, __pyx_callargs+__pyx_t_4, (2-__pyx_t_4) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET), __pyx_t_5);
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 883, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
  }
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":859
 *     # Market Data Endpoints
 * 
 *     def get_all_tickers(self):             # <<<<<<<<<<<<<<
 *         """
 *         Latest price for all symbols.
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_all_tickers", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":885
 *         return self._get('ticker/price', version=self.PRIVATE_API_VERSION)
 * 
 *     def get_orderbook_tickers(self):             # <<<<<<<<<<<<<<
 *         """
 *         Best price/qty on the order book for all symbols.
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_77get_orderbook_tickers(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_76get_orderbook_tickers, "\n        Best price/qty on the order book for all symbols.\n\n        https://www.binance.com/restapipub.html#symbols-order-book-ticker\n\n        :returns: List of order book market entries\n\n        .. code-block:: python\n\n            [\n                {\n                    \"symbol\": \"LTCBTC\",\n                    \"bidPrice\": \"4.00000000\",\n                    \"bidQty\": \"431.00000000\",\n                    \"askPrice\": \"4.00000200\",\n                    \"askQty\": \"9.00000000\"\n                },\n                {\n                    \"symbol\": \"ETHBTC\",\n                    \"bidPrice\": \"0.07946700\",\n                    \"bidQty\": \"9.00000000\",\n                    \"askPrice\": \"100000.00000000\",\n                    \"askQty\": \"1000.00000000\"\n                }\n            ]\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_77get_orderbook_tickers = {"get_orderbook_tickers", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_77get_orderbook_tickers, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_76get_orderbook_tickers};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_77get_orderbook_tickers(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_orderbook_tickers (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 885, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 885, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "get_orderbook_tickers", 0) < 0) __PYX_ERR(0, 885, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_orderbook_tickers", 1, 1, 1, i); __PYX_ERR(0, 885, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 885, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_orderbook_tickers", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 885, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_orderbook_tickers", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_76get_orderbook_tickers(__pyx_self, __pyx_v_self);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_76get_orderbook_tickers(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  size_t __pyx_t_4;
  PyObject *__pyx_t_5 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_orderbook_tickers", 0);

  /* "unicorn_binance_rest_api/manager.py":915
 * 
 *         """
 *         return self._get('ticker/bookTicker', version=self.PRIVATE_API_VERSION)             # <<<<<<<<<<<<<<
 * 
 *     def get_order_book(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_2 = __pyx_v_self;
  __Pyx_INCREF(__pyx_t_2);
  __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_PRIVATE_API_VERSION); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 915, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __pyx_t_4 = 0;
  {
    PyObject *__pyx_callargs[2 + ((CYTHON_VECTORCALL) ? 1 : 0)] = {__pyx_t_2, __pyx_mstate_global->__pyx_kp_u_ticker_bookTicker};
    __pyx_t_5 = __Pyx_MakeVectorcallBuilderKwds(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 915, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_version_2, __pyx_t_3, __pyx_t_5, __pyx_callargs+2, 0) < 0) __PYX_ERR(0, 915, __pyx_L1_error)
    __pyx_t_1 = __Pyx_Object_VectorcallMethod_CallFromBuilder(__pyx_mstate_global->__pyx_n_u_get_2, __pyx_callargs+__pyx_t_4, (2-__pyx_t_4) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET), __pyx_t_5);
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 915, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
  }
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":885
 *         return self._get('ticker/price', version=self.PRIVATE_API_VERSION)
 * 
 *     def get_orderbook_tickers(self):             # <<<<<<<<<<<<<<
 *         """
 *         Best price/qty on the order book for all symbols.
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_orderbook_tickers", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":917
 *         return self._get('ticker/bookTicker', version=self.PRIVATE_API_VERSION)
 * 
 *     def get_order_book(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get the Order Book for the market
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_79get_order_book(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_78get_order_book, "\n        Get the Order Book for the market\n\n        https://binance-docs.github.io/apidocs/spot/en/#order-book\n\n        :param symbol: required\n        :type symbol: str\n        :param limit:  Default 100; max 1000\n        :type limit: int\n\n        :returns: API response\n\n        .. code-block:: python\n\n            {\n                \"lastUpdateId\": 1027024,\n                \"bids\": [\n                    [\n                        \"4.00000000\",     # PRICE\n                        \"431.00000000\",   # QTY\n                        []                # Can be ignored\n                    ]\n                ],\n                \"asks\": [\n                    [\n                        \"4.00000200\",\n                        \"12.00000000\",\n                        []\n                    ]\n                ]\n            }\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_79get_order_book = {"get_order_book", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_79get_order_book, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_78get_order_book};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_79get_order_book(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_order_book (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 917, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 917, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "get_order_book", 1) < 0) __PYX_ERR(0, 917, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_order_book", 1, 1, 1, i); __PYX_ERR(0, 917, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 917, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_order_book", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 917, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_order_book", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_78get_order_book(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_78get_order_book(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  size_t __pyx_t_4;
  PyObject *__pyx_t_5 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_order_book", 0);

  /* "unicorn_binance_rest_api/manager.py":953
 * 
 *         """
 *         return self._get('depth', data=params, version=self.PRIVATE_API_VERSION)             # <<<<<<<<<<<<<<
 * 
 *     def get_recent_trades(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_2 = __pyx_v_self;
  __Pyx_INCREF(__pyx_t_2);
  __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_PRIVATE_API_VERSION); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 953, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __pyx_t_4 = 0;
  {
    PyObject *__pyx_callargs[2 + ((CYTHON_VECTORCALL) ? 2 : 0)] = {__pyx_t_2, __pyx_mstate_global->__pyx_n_u_depth};
    __pyx_t_5 = __Pyx_MakeVectorcallBuilderKwds(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 953, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_data, __pyx_v_params, __pyx_t_5, __pyx_callargs+2, 0) < 0) __PYX_ERR(0, 953, __pyx_L1_error)
    if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_version_2, __pyx_t_3, __pyx_t_5, __pyx_callargs+2, 1) < 0) __PYX_ERR(0, 953, __pyx_L1_error)
    __pyx_t_1 = __Pyx_Object_VectorcallMethod_CallFromBuilder(__pyx_mstate_global->__pyx_n_u_get_2, __pyx_callargs+__pyx_t_4, (2-__pyx_t_4) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET), __pyx_t_5);
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 953, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
  }
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":917
 *         return self._get('ticker/bookTicker', version=self.PRIVATE_API_VERSION)
 * 
 *     def get_order_book(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get the Order Book for the market
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_order_book", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":955
 *         return self._get('depth', data=params, version=self.PRIVATE_API_VERSION)
 * 
 *     def get_recent_trades(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get recent trades (up to last 500).
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_81get_recent_trades(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_80get_recent_trades, "\n        Get recent trades (up to last 500).\n\n        https://binance-docs.github.io/apidocs/spot/en/#recent-trades-list\n\n        :param symbol: required\n        :type symbol: str\n        :param limit:  Default 500; max 500.\n        :type limit: int\n\n        :returns: API response\n\n        .. code-block:: python\n\n            [\n                {\n                    \"id\": 28457,\n                    \"price\": \"4.00000100\",\n                    \"qty\": \"12.00000000\",\n                    \"time\": 1499865549590,\n                    \"isBuyerMaker\": true,\n                    \"isBestMatch\": true\n                }\n            ]\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_81get_recent_trades = {"get_recent_trades", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_81get_recent_trades, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_80get_recent_trades};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_81get_recent_trades(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_recent_trades (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 955, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 955, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "get_recent_trades", 1) < 0) __PYX_ERR(0, 955, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_recent_trades", 1, 1, 1, i); __PYX_ERR(0, 955, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 955, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_recent_trades", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 955, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_recent_trades", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_80get_recent_trades(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_80get_recent_trades(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  size_t __pyx_t_3;
  PyObject *__pyx_t_4 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_recent_trades", 0);

  /* "unicorn_binance_rest_api/manager.py":984
 * 
 *         """
 *         return self._get('trades', data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_historical_trades(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_2 = __pyx_v_self;
  __Pyx_INCREF(__pyx_t_2);
  __pyx_t_3 = 0;
  {
    PyObject *__pyx_callargs[2 + ((CYTHON_VECTORCALL) ? 1 : 0)] = {__pyx_t_2, __pyx_mstate_global->__pyx_n_u_trades};
    __pyx_t_4 = __Pyx_MakeVectorcallBuilderKwds(1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 984, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_data, __pyx_v_params, __pyx_t_4, __pyx_callargs+2, 0) < 0) __PYX_ERR(0, 984, __pyx_L1_error)
    __pyx_t_1 = __Pyx_Object_VectorcallMethod_CallFromBuilder(__pyx_mstate_global->__pyx_n_u_get_2, __pyx_callargs+__pyx_t_3, (2-__pyx_t_3) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET), __pyx_t_4);
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 984, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
  }
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":955
 *         return self._get('depth', data=params, version=self.PRIVATE_API_VERSION)
 * 
 *     def get_recent_trades(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get recent trades (up to last 500).
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_recent_trades", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":986
 *         return self._get('trades', data=params)
 * 
 *     def get_historical_trades(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get older trades.
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_83get_historical_trades(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_82get_historical_trades, "\n        Get older trades.\n\n        https://binance-docs.github.io/apidocs/spot/en/#recent-trades-list\n\n        :param symbol: required\n        :type symbol: str\n        :param limit:  Default 500; max 500.\n        :type limit: int\n        :param fromId:  TradeId to fetch from. Default gets most recent trades.\n        :type fromId: str\n\n        :returns: API response\n\n        .. code-block:: python\n\n            [\n                {\n                    \"id\": 28457,\n                    \"price\": \"4.00000100\",\n                    \"qty\": \"12.00000000\",\n                    \"time\": 1499865549590,\n                    \"isBuyerMaker\": true,\n                    \"isBestMatch\": true\n                }\n            ]\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_83get_historical_trades = {"get_historical_trades", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_83get_historical_trades, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_82get_historical_trades};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_83get_historical_trades(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_historical_trades (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 986, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 986, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "get_historical_trades", 1) < 0) __PYX_ERR(0, 986, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_historical_trades", 1, 1, 1, i); __PYX_ERR(0, 986, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 986, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_historical_trades", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 986, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_historical_trades", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_82get_historical_trades(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_82get_historical_trades(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  size_t __pyx_t_4;
  PyObject *__pyx_t_5 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_historical_trades", 0);

  /* "unicorn_binance_rest_api/manager.py":1017
 * 
 *         """
 *         return self._get('historicalTrades', data=params, version=self.PRIVATE_API_VERSION)             # <<<<<<<<<<<<<<
 * 
 *     def get_aggregate_trades(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_2 = __pyx_v_self;
  __Pyx_INCREF(__pyx_t_2);
  __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_PRIVATE_API_VERSION); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1017, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __pyx_t_4 = 0;
  {
    PyObject *__pyx_callargs[2 + ((CYTHON_VECTORCALL) ? 2 : 0)] = {__pyx_t_2, __pyx_mstate_global->__pyx_n_u_historicalTrades};
    __pyx_t_5 = __Pyx_MakeVectorcallBuilderKwds(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1017, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_data, __pyx_v_params, __pyx_t_5, __pyx_callargs+2, 0) < 0) __PYX_ERR(0, 1017, __pyx_L1_error)
    if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_version_2, __pyx_t_3, __pyx_t_5, __pyx_callargs+2, 1) < 0) __PYX_ERR(0, 1017, __pyx_L1_error)
    __pyx_t_1 = __Pyx_Object_VectorcallMethod_CallFromBuilder(__pyx_mstate_global->__pyx_n_u_get_2, __pyx_callargs+__pyx_t_4, (2-__pyx_t_4) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET), __pyx_t_5);
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1017, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
  }
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":986
 *         return self._get('trades', data=params)
 * 
 *     def get_historical_trades(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get older trades.
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_historical_trades", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":1019
 *         return self._get('historicalTrades', data=params, version=self.PRIVATE_API_VERSION)
 * 
 *     def get_aggregate_trades(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get compressed, aggregate trades. Trades that fill at the time,
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_85get_aggregate_trades(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_84get_aggregate_trades, "\n        Get compressed, aggregate trades. Trades that fill at the time,\n        from the same order, with the same price will have the quantity aggregated.\n\n        https://binance-docs.github.io/apidocs/spot/en/#compressedaggregate-trades-list\n\n        :param symbol: required\n        :type symbol: str\n        :param fromId:  ID to get aggregate trades from INCLUSIVE.\n        :type fromId: str\n        :param startTime: Timestamp in ms to get aggregate trades from INCLUSIVE.\n        :type startTime: int\n        :param endTime: Timestamp in ms to get aggregate trades until INCLUSIVE.\n        :type endTime: int\n        :param limit:  Default 500; max 500.\n        :type limit: int\n\n        :returns: API response\n\n        .. code-block:: python\n\n            [\n                {\n                    \"a\": 26129,         # Aggregate tradeId\n                    \"p\": \"0.01633102\",  # Price\n                    \"q\": \"4.70443515\",  # Quantity\n                    \"f\": 27781,         # First tradeId\n                    \"l\": 27781,         # Last tradeId\n                    \"T\": 1498793709153, # Timestamp\n                    \"m\": true,          # Was the buyer the maker?\n                    \"M\": true,          # Was the trade the best price match?\n                }\n            ]\n\n        :raises: BinanceRequestException, BinanceAPIException\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_85get_aggregate_trades = {"get_aggregate_trades", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_85get_aggregate_trades, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_84get_aggregate_trades};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_85get_aggregate_trades(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_aggregate_trades (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 1019, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 1019, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "get_aggregate_trades", 1) < 0) __PYX_ERR(0, 1019, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_aggregate_trades", 1, 1, 1, i); __PYX_ERR(0, 1019, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 1019, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_aggregate_trades", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 1019, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_aggregate_trades", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_84get_aggregate_trades(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_84get_aggregate_trades(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  size_t __pyx_t_4;
  PyObject *__pyx_t_5 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_aggregate_trades", 0);

  /* "unicorn_binance_rest_api/manager.py":1056
 *         :raises: BinanceRequestException, BinanceAPIException
 *         """
 *         return self._get('aggTrades', data=params, version=self.PRIVATE_API_VERSION)             # <<<<<<<<<<<<<<
 * 
 *     def aggregate_trade_iter(self, symbol, start_str=None, last_id=None):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_2 = __pyx_v_self;
  __Pyx_INCREF(__pyx_t_2);
  __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_PRIVATE_API_VERSION); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1056, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __pyx_t_4 = 0;
  {
    PyObject *__pyx_callargs[2 + ((CYTHON_VECTORCALL) ? 2 : 0)] = {__pyx_t_2, __pyx_mstate_global->__pyx_n_u_aggTrades};
    __pyx_t_5 = __Pyx_MakeVectorcallBuilderKwds(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1056, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_data, __pyx_v_params, __pyx_t_5, __pyx_callargs+2, 0) < 0) __PYX_ERR(0, 1056, __pyx_L1_error)
    if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_version_2, __pyx_t_3, __pyx_t_5, __pyx_callargs+2, 1) < 0) __PYX_ERR(0, 1056, __pyx_L1_error)
    __pyx_t_1 = __Pyx_Object_VectorcallMethod_CallFromBuilder(__pyx_mstate_global->__pyx_n_u_get_2, __pyx_callargs+__pyx_t_4, (2-__pyx_t_4) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET), __pyx_t_5);
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1056, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
  }
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":1019
 *         return self._get('historicalTrades', data=params, version=self.PRIVATE_API_VERSION)
 * 
 *     def get_aggregate_trades(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get compressed, aggregate trades. Trades that fill at the time,
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_aggregate_trades", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
static PyObject *__pyx_gb_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_88generator(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value); /* proto */

/* "unicorn_binance_rest_api/manager.py":1058
 *         return self._get('aggTrades', data=params, version=self.PRIVATE_API_VERSION)
 * 
 *     def aggregate_trade_iter(self, symbol, start_str=None, last_id=None):             # <<<<<<<<<<<<<<
 *         """
 *         Iterate over aggregate trade data from (start_time or last_id) to
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_87aggregate_trade_iter(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_86aggregate_trade_iter, "\n        Iterate over aggregate trade data from (start_time or last_id) to\n        the end of the history so far.\n\n        If start_time is specified, start with the first trade after\n        start_time. Meant to initialise a local cache of trade data.\n\n        If last_id is specified, start with the trade after it. This is meant\n        for updating a pre-existing local trade data cache.\n\n        Only allows start_str or last_id\342\200\224not both. Not guaranteed to work\n        right if you're running more than one of these simultaneously. You\n        will probably hit your rate limit.\n\n        See dateparser docs for valid start and end string formats http://dateparser.readthedocs.io/en/latest/\n\n        If using offset strings for dates add \"UTC\" to date string e.g. \"now UTC\", \"11 hours ago UTC\"\n\n        :param symbol: Symbol string e.g. ETHBTC\n        :type symbol: str\n        :param start_str: Start date string in UTC format or timestamp in milliseconds. The iterator will\n                          return the first trade occurring later than this time.\n        :type start_str: str|int\n        :param last_id: aggregate trade ID of the last known aggregate trade.\n                        Not a regular trade ID. See\n                        https://binance-docs.github.io/apidocs/spot/en/#compressedaggregate-trades-list.\n\n        :returns: an iterator of JSON objects, one per trade. The format of\n                  each object is identical to Client.aggregate_trades().\n\n        :type last_id: int\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_87aggregate_trade_iter = {"aggregate_trade_iter", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_87aggregate_trade_iter, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_86aggregate_trade_iter};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_87aggregate_trade_iter(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_symbol = 0;
  PyObject *__pyx_v_start_str = 0;
  PyObject *__pyx_v_last_id = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[4] = {0,0,0,0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("aggregate_trade_iter (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,&__pyx_mstate_global->__pyx_n_u_symbol,&__pyx_mstate_global->__pyx_n_u_start_str,&__pyx_mstate_global->__pyx_n_u_last_id,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 1058, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  4:
        values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 1058, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  3:
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 1058, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 1058, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 1058, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "aggregate_trade_iter", 0) < 0) __PYX_ERR(0, 1058, __pyx_L3_error)
      if (!values[2]) values[2] = __Pyx_NewRef(((PyObject *)Py_None));
      if (!values[3]) values[3] = __Pyx_NewRef(((PyObject *)Py_None));
      for (Py_ssize_t i = __pyx_nargs; i < 2; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("aggregate_trade_iter", 0, 2, 4, i); __PYX_ERR(0, 1058, __pyx_L3_error) }
      }
    } else {
      switch (__pyx_nargs) {
        case  4:
        values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 1058, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  3:
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 1058, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 1058, __pyx_L3_error)
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 1058, __pyx_L3_error)
        break;
        default: goto __pyx_L5_argtuple_error;
      }
      if (!values[2]) values[2] = __Pyx_NewRef(((PyObject *)Py_None));
      if (!values[3]) values[3] = __Pyx_NewRef(((PyObject *)Py_None));
    }
    __pyx_v_self = values[0];
    __pyx_v_symbol = values[1];
    __pyx_v_start_str = values[2];
    __pyx_v_last_id = values[3];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("aggregate_trade_iter", 0, 2, 4, __pyx_nargs); __PYX_ERR(0, 1058, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.aggregate_trade_iter", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_86aggregate_trade_iter(__pyx_self, __pyx_v_self, __pyx_v_symbol, __pyx_v_start_str, __pyx_v_last_id);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_86aggregate_trade_iter(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_symbol, PyObject *__pyx_v_start_str, PyObject *__pyx_v_last_id) {
  struct __pyx_obj_24unicorn_binance_rest_api_7manager___pyx_scope_struct_1_aggregate_trade_iter *__pyx_cur_scope;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("aggregate_trade_iter", 0);
  __pyx_cur_scope = (struct __pyx_obj_24unicorn_binance_rest_api_7manager___pyx_scope_struct_1_aggregate_trade_iter *)__pyx_tp_new_24unicorn_binance_rest_api_7manager___pyx_scope_struct_1_aggregate_trade_iter(__pyx_mstate_global->__pyx_ptype_24unicorn_binance_rest_api_7manager___pyx_scope_struct_1_aggregate_trade_iter, __pyx_mstate_global->__pyx_empty_tuple, NULL);
  if (unlikely(!__pyx_cur_scope)) {
    __pyx_cur_scope = ((struct __pyx_obj_24unicorn_binance_rest_api_7manager___pyx_scope_struct_1_aggregate_trade_iter *)Py_None);
    __Pyx_INCREF(Py_None);
    __PYX_ERR(0, 1058, __pyx_L1_error)
  } else {
    __Pyx_GOTREF((PyObject *)__pyx_cur_scope);
  }
  __pyx_cur_scope->__pyx_v_self = __pyx_v_self;
  __Pyx_INCREF(__pyx_cur_scope->__pyx_v_self);
  __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_self);
  __pyx_cur_scope->__pyx_v_symbol = __pyx_v_symbol;
  __Pyx_INCREF(__pyx_cur_scope->__pyx_v_symbol);
  __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_symbol);
  __pyx_cur_scope->__pyx_v_start_str = __pyx_v_start_str;
  __Pyx_INCREF(__pyx_cur_scope->__pyx_v_start_str);
  __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_start_str);
  __pyx_cur_scope->__pyx_v_last_id = __pyx_v_last_id;
  __Pyx_INCREF(__pyx_cur_scope->__pyx_v_last_id);
  __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_last_id);
  {
    __pyx_CoroutineObject *gen = __Pyx_Generator_New((__pyx_coroutine_body_t) __pyx_gb_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_88generator, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[1]), (PyObject *) __pyx_cur_scope, __pyx_mstate_global->__pyx_n_u_aggregate_trade_iter, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_aggregate, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager); if (unlikely(!gen)) __PYX_ERR(0, 1058, __pyx_L1_error)
    __Pyx_DECREF(__pyx_cur_scope);
    __Pyx_RefNannyFinishContext();
    return (PyObject *) gen;
  }

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.aggregate_trade_iter", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __Pyx_DECREF((PyObject *)__pyx_cur_scope);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_gb_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_88generator(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value) /* generator body */
{
  struct __pyx_obj_24unicorn_binance_rest_api_7manager___pyx_scope_struct_1_aggregate_trade_iter *__pyx_cur_scope = ((struct __pyx_obj_24unicorn_binance_rest_api_7manager___pyx_scope_struct_1_aggregate_trade_iter *)__pyx_generator->closure);
  PyObject *__pyx_r = NULL;
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  PyObject *__pyx_t_4 = NULL;
  PyObject *__pyx_t_5 = NULL;
  size_t __pyx_t_6;
  Py_ssize_t __pyx_t_7;
  PyObject *__pyx_t_8 = NULL;
  PyObject *(*__pyx_t_9)(PyObject *);
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("aggregate_trade_iter", 0);
  switch (__pyx_generator->resume_label) {
    case 0: goto __pyx_L3_first_run;
    case 1: goto __pyx_L16_resume_from_yield;
    case 2: goto __pyx_L23_resume_from_yield;
    default: /* CPython raises the right error here */
    __Pyx_RefNannyFinishContext();
    return NULL;
  }
  __pyx_L3_first_run:;
  if (unlikely(__pyx_sent_value != Py_None)) {
    if (unlikely(__pyx_sent_value)) PyErr_SetString(PyExc_TypeError, "can't send non-None value to a just-started generator");
    __PYX_ERR(0, 1058, __pyx_L1_error)
  }

  /* "unicorn_binance_rest_api/manager.py":1092
 * 
 *         """
 *         if start_str is not None and last_id is not None:             # <<<<<<<<<<<<<<
 *             raise ValueError(
 *                 'start_time and last_id may not be simultaneously specified.')
*/
  __pyx_t_2 = (__pyx_cur_scope->__pyx_v_start_str != Py_None);
  if (__pyx_t_2) {
  } else {
    __pyx_t_1 = __pyx_t_2;
    goto __pyx_L5_bool_binop_done;
  }
  __pyx_t_2 = (__pyx_cur_scope->__pyx_v_last_id != Py_None);
  __pyx_t_1 = __pyx_t_2;
  __pyx_L5_bool_binop_done:;
  if (unlikely(__pyx_t_1)) {

    /* "unicorn_binance_rest_api/manager.py":1093
 *         """
 *         if start_str is not None and last_id is not None:
 *             raise ValueError(             # <<<<<<<<<<<<<<
 *                 'start_time and last_id may not be simultaneously specified.')
 * 
*/
    __pyx_t_4 = NULL;
    __Pyx_INCREF(__pyx_builtin_ValueError);
    __pyx_t_5 = __pyx_builtin_ValueError; 
    __pyx_t_6 = 1;
    {
      PyObject *__pyx_callargs[2] = {__pyx_t_4, __pyx_mstate_global->__pyx_kp_u_start_time_and_last_id_may_not_b};
      __pyx_t_3 = __Pyx_PyObject_FastCall(__pyx_t_5, __pyx_callargs+__pyx_t_6, (2-__pyx_t_6) | (__pyx_t_6*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
      __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1093, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_3);
    }
    __Pyx_Raise(__pyx_t_3, 0, 0, 0);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __PYX_ERR(0, 1093, __pyx_L1_error)

    /* "unicorn_binance_rest_api/manager.py":1092
 * 
 *         """
 *         if start_str is not None and last_id is not None:             # <<<<<<<<<<<<<<
 *             raise ValueError(
 *                 'start_time and last_id may not be simultaneously specified.')
*/
  }

  /* "unicorn_binance_rest_api/manager.py":1097
 * 
 *         # If there's no last_id, get one.
 *         if last_id is None:             # <<<<<<<<<<<<<<
 *             # Without a last_id, we actually need the first trade.  Normally,
 *             # we'd get rid of it. See the next loop.
*/
  __pyx_t_1 = (__pyx_cur_scope->__pyx_v_last_id == Py_None);
  if (__pyx_t_1) {

    /* "unicorn_binance_rest_api/manager.py":1100
 *             # Without a last_id, we actually need the first trade.  Normally,
 *             # we'd get rid of it. See the next loop.
 *             if start_str is None:             # <<<<<<<<<<<<<<
 *                 trades = self.get_aggregate_trades(symbol=symbol, fromId=0)
 *             else:
*/
    __pyx_t_1 = (__pyx_cur_scope->__pyx_v_start_str == Py_None);
    if (__pyx_t_1) {

      /* "unicorn_binance_rest_api/manager.py":1101
 *             # we'd get rid of it. See the next loop.
 *             if start_str is None:
 *                 trades = self.get_aggregate_trades(symbol=symbol, fromId=0)             # <<<<<<<<<<<<<<
 *             else:
 *                 # The difference between startTime and endTime should be less
*/
      __pyx_t_5 = __pyx_cur_scope->__pyx_v_self;
      __Pyx_INCREF(__pyx_t_5);
      __pyx_t_6 = 0;
      {
        PyObject *__pyx_callargs[2 + ((CYTHON_VECTORCALL) ? 2 : 0)] = {__pyx_t_5, NULL};
        __pyx_t_4 = __Pyx_MakeVectorcallBuilderKwds(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1101, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_4);
        if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_symbol, __pyx_cur_scope->__pyx_v_symbol, __pyx_t_4, __pyx_callargs+1, 0) < 0) __PYX_ERR(0, 1101, __pyx_L1_error)
        if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_fromId, __pyx_mstate_global->__pyx_int_0, __pyx_t_4, __pyx_callargs+1, 1) < 0) __PYX_ERR(0, 1101, __pyx_L1_error)
        __pyx_t_3 = __Pyx_Object_VectorcallMethod_CallFromBuilder(__pyx_mstate_global->__pyx_n_u_get_aggregate_trades, __pyx_callargs+__pyx_t_6, (1-__pyx_t_6) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET), __pyx_t_4);
        __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1101, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_3);
      }
      __Pyx_GIVEREF(__pyx_t_3);
      __pyx_cur_scope->__pyx_v_trades = __pyx_t_3;
      __pyx_t_3 = 0;

      /* "unicorn_binance_rest_api/manager.py":1100
 *             # Without a last_id, we actually need the first trade.  Normally,
 *             # we'd get rid of it. See the next loop.
 *             if start_str is None:             # <<<<<<<<<<<<<<
 *                 trades = self.get_aggregate_trades(symbol=symbol, fromId=0)
 *             else:
*/
      goto __pyx_L8;
    }

    /* "unicorn_binance_rest_api/manager.py":1106
 *                 # or equal than an hour and the result set should contain at
 *                 # least one trade.
 *                 if type(start_str) is int:             # <<<<<<<<<<<<<<
 *                     start_ts = start_str
 *                 else:
*/
    /*else*/ {
      __pyx_t_1 = (((PyObject *)Py_TYPE(__pyx_cur_scope->__pyx_v_start_str)) == ((PyObject *)(&PyLong_Type)));
      if (__pyx_t_1) {

        /* "unicorn_binance_rest_api/manager.py":1107
 *                 # least one trade.
 *                 if type(start_str) is int:
 *                     start_ts = start_str             # <<<<<<<<<<<<<<
 *                 else:
 *                     start_ts = date_to_milliseconds(start_str)
*/
        __Pyx_INCREF(__pyx_cur_scope->__pyx_v_start_str);
        __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_start_str);
        __pyx_cur_scope->__pyx_v_start_ts = __pyx_cur_scope->__pyx_v_start_str;

        /* "unicorn_binance_rest_api/manager.py":1106
 *                 # or equal than an hour and the result set should contain at
 *                 # least one trade.
 *                 if type(start_str) is int:             # <<<<<<<<<<<<<<
 *                     start_ts = start_str
 *                 else:
*/
        goto __pyx_L9;
      }

      /* "unicorn_binance_rest_api/manager.py":1109
 *                     start_ts = start_str
 *                 else:
 *                     start_ts = date_to_milliseconds(start_str)             # <<<<<<<<<<<<<<
 *                 # If the resulting set is empty (i.e. no trades in that interval)
 *                 # then we just move forward hour by hour until we find at least one
*/
      /*else*/ {
        __pyx_t_4 = NULL;
        __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_date_to_milliseconds); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1109, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_5);
        __pyx_t_6 = 1;
        #if CYTHON_UNPACK_METHODS
        if (unlikely(PyMethod_Check(__pyx_t_5))) {
          __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_5);
          assert(__pyx_t_4);
          PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_5);
          __Pyx_INCREF(__pyx_t_4);
          __Pyx_INCREF(__pyx__function);
          __Pyx_DECREF_SET(__pyx_t_5, __pyx__function);
          __pyx_t_6 = 0;
        }
        #endif
        {
          PyObject *__pyx_callargs[2] = {__pyx_t_4, __pyx_cur_scope->__pyx_v_start_str};
          __pyx_t_3 = __Pyx_PyObject_FastCall(__pyx_t_5, __pyx_callargs+__pyx_t_6, (2-__pyx_t_6) | (__pyx_t_6*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1109, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_3);
        }
        __Pyx_GIVEREF(__pyx_t_3);
        __pyx_cur_scope->__pyx_v_start_ts = __pyx_t_3;
        __pyx_t_3 = 0;
      }
      __pyx_L9:;

      /* "unicorn_binance_rest_api/manager.py":1113
 *                 # then we just move forward hour by hour until we find at least one
 *                 # trade or reach present moment
 *                 while True:             # <<<<<<<<<<<<<<
 *                     end_ts = start_ts + (60 * 60 * 1000)
 *                     trades = self.get_aggregate_trades(
*/
      while (1) {

        /* "unicorn_binance_rest_api/manager.py":1114
 *                 # trade or reach present moment
 *                 while True:
 *                     end_ts = start_ts + (60 * 60 * 1000)             # <<<<<<<<<<<<<<
 *                     trades = self.get_aggregate_trades(
 *                         symbol=symbol,
*/
        __pyx_t_3 = __Pyx_PyLong_AddObjC(__pyx_cur_scope->__pyx_v_start_ts, __pyx_mstate_global->__pyx_int_3600000, 0x36ee80, 0, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1114, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_XGOTREF(__pyx_cur_scope->__pyx_v_end_ts);
        __Pyx_XDECREF_SET(__pyx_cur_scope->__pyx_v_end_ts, __pyx_t_3);
        __Pyx_GIVEREF(__pyx_t_3);
        __pyx_t_3 = 0;

        /* "unicorn_binance_rest_api/manager.py":1115
 *                 while True:
 *                     end_ts = start_ts + (60 * 60 * 1000)
 *                     trades = self.get_aggregate_trades(             # <<<<<<<<<<<<<<
 *                         symbol=symbol,
 *                         startTime=start_ts,
*/
        __pyx_t_5 = __pyx_cur_scope->__pyx_v_self;
        __Pyx_INCREF(__pyx_t_5);

        /* "unicorn_binance_rest_api/manager.py":1118
 *                         symbol=symbol,
 *                         startTime=start_ts,
 *                         endTime=end_ts)             # <<<<<<<<<<<<<<
 *                     if len(trades) > 0:
 *                         break
*/
        __pyx_t_6 = 0;
        {
          PyObject *__pyx_callargs[2 + ((CYTHON_VECTORCALL) ? 3 : 0)] = {__pyx_t_5, NULL};
          __pyx_t_4 = __Pyx_MakeVectorcallBuilderKwds(3); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1115, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_4);
          if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_symbol, __pyx_cur_scope->__pyx_v_symbol, __pyx_t_4, __pyx_callargs+1, 0) < 0) __PYX_ERR(0, 1115, __pyx_L1_error)
          if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_startTime, __pyx_cur_scope->__pyx_v_start_ts, __pyx_t_4, __pyx_callargs+1, 1) < 0) __PYX_ERR(0, 1115, __pyx_L1_error)
          if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_endTime, __pyx_cur_scope->__pyx_v_end_ts, __pyx_t_4, __pyx_callargs+1, 2) < 0) __PYX_ERR(0, 1115, __pyx_L1_error)
          __pyx_t_3 = __Pyx_Object_VectorcallMethod_CallFromBuilder(__pyx_mstate_global->__pyx_n_u_get_aggregate_trades, __pyx_callargs+__pyx_t_6, (1-__pyx_t_6) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET), __pyx_t_4);
          __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1115, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_3);
        }
        __Pyx_XGOTREF(__pyx_cur_scope->__pyx_v_trades);
        __Pyx_XDECREF_SET(__pyx_cur_scope->__pyx_v_trades, __pyx_t_3);
        __Pyx_GIVEREF(__pyx_t_3);
        __pyx_t_3 = 0;

        /* "unicorn_binance_rest_api/manager.py":1119
 *                         startTime=start_ts,
 *                         endTime=end_ts)
 *                     if len(trades) > 0:             # <<<<<<<<<<<<<<
 *                         break
 *                     # If we reach present moment and find no trades then there is
*/
        __pyx_t_7 = PyObject_Length(__pyx_cur_scope->__pyx_v_trades); if (unlikely(__pyx_t_7 == ((Py_ssize_t)-1))) __PYX_ERR(0, 1119, __pyx_L1_error)
        __pyx_t_1 = (__pyx_t_7 > 0);
        if (__pyx_t_1) {

          /* "unicorn_binance_rest_api/manager.py":1120
 *                         endTime=end_ts)
 *                     if len(trades) > 0:
 *                         break             # <<<<<<<<<<<<<<
 *                     # If we reach present moment and find no trades then there is
 *                     # nothing to iterate, so we're done
*/
          goto __pyx_L11_break;

          /* "unicorn_binance_rest_api/manager.py":1119
 *                         startTime=start_ts,
 *                         endTime=end_ts)
 *                     if len(trades) > 0:             # <<<<<<<<<<<<<<
 *                         break
 *                     # If we reach present moment and find no trades then there is
*/
        }

        /* "unicorn_binance_rest_api/manager.py":1123
 *                     # If we reach present moment and find no trades then there is
 *                     # nothing to iterate, so we're done
 *                     if end_ts > int(time.time() * 1000):             # <<<<<<<<<<<<<<
 *                         return
 *                     start_ts = end_ts
*/
        __pyx_t_4 = NULL;
        __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_time); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1123, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_5);
        __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_time); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1123, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_8);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __pyx_t_6 = 1;
        #if CYTHON_UNPACK_METHODS
        if (unlikely(PyMethod_Check(__pyx_t_8))) {
          __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_8);
          assert(__pyx_t_4);
          PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_8);
          __Pyx_INCREF(__pyx_t_4);
          __Pyx_INCREF(__pyx__function);
          __Pyx_DECREF_SET(__pyx_t_8, __pyx__function);
          __pyx_t_6 = 0;
        }
        #endif
        {
          PyObject *__pyx_callargs[2] = {__pyx_t_4, NULL};
          __pyx_t_3 = __Pyx_PyObject_FastCall(__pyx_t_8, __pyx_callargs+__pyx_t_6, (1-__pyx_t_6) | (__pyx_t_6*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
          if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1123, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_3);
        }
        __pyx_t_8 = __Pyx_PyLong_MultiplyObjC(__pyx_t_3, __pyx_mstate_global->__pyx_int_1000, 0x3E8, 0, 0); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1123, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_8);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_t_3 = __Pyx_PyNumber_Int(__pyx_t_8); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1123, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        __pyx_t_8 = PyObject_RichCompare(__pyx_cur_scope->__pyx_v_end_ts, __pyx_t_3, Py_GT); __Pyx_XGOTREF(__pyx_t_8); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1123, __pyx_L1_error)
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_t_8); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 1123, __pyx_L1_error)
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        if (__pyx_t_1) {

          /* "unicorn_binance_rest_api/manager.py":1124
 *                     # nothing to iterate, so we're done
 *                     if end_ts > int(time.time() * 1000):
 *                         return             # <<<<<<<<<<<<<<
 *                     start_ts = end_ts
 *             for t in trades:
*/
          __Pyx_XDECREF(__pyx_r);
          __pyx_r = Py_None; __Pyx_INCREF(Py_None);
          goto __pyx_L0;

          /* "unicorn_binance_rest_api/manager.py":1123
 *                     # If we reach present moment and find no trades then there is
 *                     # nothing to iterate, so we're done
 *                     if end_ts > int(time.time() * 1000):             # <<<<<<<<<<<<<<
 *                         return
 *                     start_ts = end_ts
*/
        }

        /* "unicorn_binance_rest_api/manager.py":1125
 *                     if end_ts > int(time.time() * 1000):
 *                         return
 *                     start_ts = end_ts             # <<<<<<<<<<<<<<
 *             for t in trades:
 *                 yield t
*/
        __Pyx_INCREF(__pyx_cur_scope->__pyx_v_end_ts);
        __Pyx_GOTREF(__pyx_cur_scope->__pyx_v_start_ts);
        __Pyx_DECREF_SET(__pyx_cur_scope->__pyx_v_start_ts, __pyx_cur_scope->__pyx_v_end_ts);
        __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_end_ts);
      }
      __pyx_L11_break:;
    }
    __pyx_L8:;

    /* "unicorn_binance_rest_api/manager.py":1126
 *                         return
 *                     start_ts = end_ts
 *             for t in trades:             # <<<<<<<<<<<<<<
 *                 yield t
 *             last_id = trades[-1][self.AGG_ID]
*/
    if (unlikely(!__pyx_cur_scope->__pyx_v_trades)) { __Pyx_RaiseUnboundLocalError("trades"); __PYX_ERR(0, 1126, __pyx_L1_error) }
    if (likely(PyList_CheckExact(__pyx_cur_scope->__pyx_v_trades)) || PyTuple_CheckExact(__pyx_cur_scope->__pyx_v_trades)) {
      __pyx_t_8 = __pyx_cur_scope->__pyx_v_trades; __Pyx_INCREF(__pyx_t_8);
      __pyx_t_7 = 0;
      __pyx_t_9 = NULL;
    } else {
      __pyx_t_7 = -1; __pyx_t_8 = PyObject_GetIter(__pyx_cur_scope->__pyx_v_trades); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1126, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_8);
      __pyx_t_9 = (CYTHON_COMPILING_IN_LIMITED_API) ? PyIter_Next : __Pyx_PyObject_GetIterNextFunc(__pyx_t_8); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 1126, __pyx_L1_error)
    }
    for (;;) {
      if (likely(!__pyx_t_9)) {
        if (likely(PyList_CheckExact(__pyx_t_8))) {
          {
            Py_ssize_t __pyx_temp = __Pyx_PyList_GET_SIZE(__pyx_t_8);
            #if !CYTHON_ASSUME_SAFE_SIZE
            if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 1126, __pyx_L1_error)
            #endif
            if (__pyx_t_7 >= __pyx_temp) break;
          }
          __pyx_t_3 = __Pyx_PyList_GetItemRef(__pyx_t_8, __pyx_t_7);
          ++__pyx_t_7;
        } else {
          {
            Py_ssize_t __pyx_temp = __Pyx_PyTuple_GET_SIZE(__pyx_t_8);
            #if !CYTHON_ASSUME_SAFE_SIZE
            if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 1126, __pyx_L1_error)
            #endif
            if (__pyx_t_7 >= __pyx_temp) break;
          }
          #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
          __pyx_t_3 = __Pyx_NewRef(PyTuple_GET_ITEM(__pyx_t_8, __pyx_t_7));
          #else
          __pyx_t_3 = __Pyx_PySequence_ITEM(__pyx_t_8, __pyx_t_7);
          #endif
          ++__pyx_t_7;
        }
        if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1126, __pyx_L1_error)
      } else {
        __pyx_t_3 = __pyx_t_9(__pyx_t_8);
        if (unlikely(!__pyx_t_3)) {
          PyObject* exc_type = PyErr_Occurred();
          if (exc_type) {
            if (unlikely(!__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) __PYX_ERR(0, 1126, __pyx_L1_error)
            PyErr_Clear();
          }
          break;
        }
      }
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_XGOTREF(__pyx_cur_scope->__pyx_v_t);
      __Pyx_XDECREF_SET(__pyx_cur_scope->__pyx_v_t, __pyx_t_3);
      __Pyx_GIVEREF(__pyx_t_3);
      __pyx_t_3 = 0;

      /* "unicorn_binance_rest_api/manager.py":1127
 *                     start_ts = end_ts
 *             for t in trades:
 *                 yield t             # <<<<<<<<<<<<<<
 *             last_id = trades[-1][self.AGG_ID]
 * 
*/
      __Pyx_INCREF(__pyx_cur_scope->__pyx_v_t);
      __pyx_r = __pyx_cur_scope->__pyx_v_t;
      __pyx_cur_scope->__pyx_t_0 = __pyx_t_7;
      __Pyx_XGIVEREF(__pyx_t_8);
      __pyx_cur_scope->__pyx_t_1 = __pyx_t_8;
      __pyx_cur_scope->__pyx_t_2 = __pyx_t_9;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      __Pyx_Coroutine_ResetAndClearException(__pyx_generator);
      /* return from generator, yielding value */
      __pyx_generator->resume_label = 1;
      return __pyx_r;
      __pyx_L16_resume_from_yield:;
      __pyx_t_7 = __pyx_cur_scope->__pyx_t_0;
      __pyx_t_8 = __pyx_cur_scope->__pyx_t_1;
      __pyx_cur_scope->__pyx_t_1 = 0;
      __Pyx_XGOTREF(__pyx_t_8);
      __pyx_t_9 = __pyx_cur_scope->__pyx_t_2;
      if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 1127, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":1126
 *                         return
 *                     start_ts = end_ts
 *             for t in trades:             # <<<<<<<<<<<<<<
 *                 yield t
 *             last_id = trades[-1][self.AGG_ID]
*/
    }
    __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

    /* "unicorn_binance_rest_api/manager.py":1128
 *             for t in trades:
 *                 yield t
 *             last_id = trades[-1][self.AGG_ID]             # <<<<<<<<<<<<<<
 * 
 *         while True:
*/
    if (unlikely(!__pyx_cur_scope->__pyx_v_trades)) { __Pyx_RaiseUnboundLocalError("trades"); __PYX_ERR(0, 1128, __pyx_L1_error) }
    __pyx_t_8 = __Pyx_GetItemInt(__pyx_cur_scope->__pyx_v_trades, -1L, long, 1, __Pyx_PyLong_From_long, 0, 1, 1, 1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1128, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_8);
    __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_mstate_global->__pyx_n_u_AGG_ID); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1128, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_4 = __Pyx_PyObject_GetItem(__pyx_t_8, __pyx_t_3); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1128, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_GOTREF(__pyx_cur_scope->__pyx_v_last_id);
    __Pyx_DECREF_SET(__pyx_cur_scope->__pyx_v_last_id, __pyx_t_4);
    __Pyx_GIVEREF(__pyx_t_4);
    __pyx_t_4 = 0;

    /* "unicorn_binance_rest_api/manager.py":1097
 * 
 *         # If there's no last_id, get one.
 *         if last_id is None:             # <<<<<<<<<<<<<<
 *             # Without a last_id, we actually need the first trade.  Normally,
 *             # we'd get rid of it. See the next loop.
*/
  }

  /* "unicorn_binance_rest_api/manager.py":1130
 *             last_id = trades[-1][self.AGG_ID]
 * 
 *         while True:             # <<<<<<<<<<<<<<
 *             # There is no need to wait between queries, to avoid hitting the
 *             # rate limit. We're using blocking IO, and as long as we're the
*/
  while (1) {

    /* "unicorn_binance_rest_api/manager.py":1137
 *             # data. That really simplifies this function's job. Binance is
 *             # fucking awesome.
 *             trades = self.get_aggregate_trades(symbol=symbol, fromId=last_id)             # <<<<<<<<<<<<<<
 *             # fromId=n returns a set starting with id n, but we already have
 *             # that one. So get rid of the first item in the result set.
*/
    __pyx_t_3 = __pyx_cur_scope->__pyx_v_self;
    __Pyx_INCREF(__pyx_t_3);
    __pyx_t_6 = 0;
    {
      PyObject *__pyx_callargs[2 + ((CYTHON_VECTORCALL) ? 2 : 0)] = {__pyx_t_3, NULL};
      __pyx_t_8 = __Pyx_MakeVectorcallBuilderKwds(2); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1137, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_8);
      if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_symbol, __pyx_cur_scope->__pyx_v_symbol, __pyx_t_8, __pyx_callargs+1, 0) < 0) __PYX_ERR(0, 1137, __pyx_L1_error)
      if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_fromId, __pyx_cur_scope->__pyx_v_last_id, __pyx_t_8, __pyx_callargs+1, 1) < 0) __PYX_ERR(0, 1137, __pyx_L1_error)
      __pyx_t_4 = __Pyx_Object_VectorcallMethod_CallFromBuilder(__pyx_mstate_global->__pyx_n_u_get_aggregate_trades, __pyx_callargs+__pyx_t_6, (1-__pyx_t_6) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET), __pyx_t_8);
      __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1137, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_4);
    }
    __Pyx_XGOTREF(__pyx_cur_scope->__pyx_v_trades);
    __Pyx_XDECREF_SET(__pyx_cur_scope->__pyx_v_trades, __pyx_t_4);
    __Pyx_GIVEREF(__pyx_t_4);
    __pyx_t_4 = 0;

    /* "unicorn_binance_rest_api/manager.py":1140
 *             # fromId=n returns a set starting with id n, but we already have
 *             # that one. So get rid of the first item in the result set.
 *             trades = trades[1:]             # <<<<<<<<<<<<<<
 *             if len(trades) == 0:
 *                 return
*/
    __pyx_t_4 = __Pyx_PyObject_GetSlice(__pyx_cur_scope->__pyx_v_trades, 1, 0, NULL, NULL, &__pyx_mstate_global->__pyx_slice[1], 1, 0, 1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1140, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_GOTREF(__pyx_cur_scope->__pyx_v_trades);
    __Pyx_DECREF_SET(__pyx_cur_scope->__pyx_v_trades, __pyx_t_4);
    __Pyx_GIVEREF(__pyx_t_4);
    __pyx_t_4 = 0;

    /* "unicorn_binance_rest_api/manager.py":1141
 *             # that one. So get rid of the first item in the result set.
 *             trades = trades[1:]
 *             if len(trades) == 0:             # <<<<<<<<<<<<<<
 *                 return
 *             for t in trades:
*/
    __pyx_t_7 = PyObject_Length(__pyx_cur_scope->__pyx_v_trades); if (unlikely(__pyx_t_7 == ((Py_ssize_t)-1))) __PYX_ERR(0, 1141, __pyx_L1_error)
    __pyx_t_1 = (__pyx_t_7 == 0);
    if (__pyx_t_1) {

      /* "unicorn_binance_rest_api/manager.py":1142
 *             trades = trades[1:]
 *             if len(trades) == 0:
 *                 return             # <<<<<<<<<<<<<<
 *             for t in trades:
 *                 yield t
*/
      __Pyx_XDECREF(__pyx_r);
      __pyx_r = Py_None; __Pyx_INCREF(Py_None);
      goto __pyx_L0;

      /* "unicorn_binance_rest_api/manager.py":1141
 *             # that one. So get rid of the first item in the result set.
 *             trades = trades[1:]
 *             if len(trades) == 0:             # <<<<<<<<<<<<<<
 *                 return
 *             for t in trades:
*/
    }

    /* "unicorn_binance_rest_api/manager.py":1143
 *             if len(trades) == 0:
 *                 return
 *             for t in trades:             # <<<<<<<<<<<<<<
 *                 yield t
 *             last_id = trades[-1][self.AGG_ID]
*/
    if (likely(PyList_CheckExact(__pyx_cur_scope->__pyx_v_trades)) || PyTuple_CheckExact(__pyx_cur_scope->__pyx_v_trades)) {
      __pyx_t_4 = __pyx_cur_scope->__pyx_v_trades; __Pyx_INCREF(__pyx_t_4);
      __pyx_t_7 = 0;
      __pyx_t_9 = NULL;
    } else {
      __pyx_t_7 = -1; __pyx_t_4 = PyObject_GetIter(__pyx_cur_scope->__pyx_v_trades); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1143, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_9 = (CYTHON_COMPILING_IN_LIMITED_API) ? PyIter_Next : __Pyx_PyObject_GetIterNextFunc(__pyx_t_4); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 1143, __pyx_L1_error)
    }
    for (;;) {
      if (likely(!__pyx_t_9)) {
        if (likely(PyList_CheckExact(__pyx_t_4))) {
          {
            Py_ssize_t __pyx_temp = __Pyx_PyList_GET_SIZE(__pyx_t_4);
            #if !CYTHON_ASSUME_SAFE_SIZE
            if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 1143, __pyx_L1_error)
            #endif
            if (__pyx_t_7 >= __pyx_temp) break;
          }
          __pyx_t_8 = __Pyx_PyList_GetItemRef(__pyx_t_4, __pyx_t_7);
          ++__pyx_t_7;
        } else {
          {
            Py_ssize_t __pyx_temp = __Pyx_PyTuple_GET_SIZE(__pyx_t_4);
            #if !CYTHON_ASSUME_SAFE_SIZE
            if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 1143, __pyx_L1_error)
            #endif
            if (__pyx_t_7 >= __pyx_temp) break;
          }
          #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
          __pyx_t_8 = __Pyx_NewRef(PyTuple_GET_ITEM(__pyx_t_4, __pyx_t_7));
          #else
          __pyx_t_8 = __Pyx_PySequence_ITEM(__pyx_t_4, __pyx_t_7);
          #endif
          ++__pyx_t_7;
        }
        if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1143, __pyx_L1_error)
      } else {
        __pyx_t_8 = __pyx_t_9(__pyx_t_4);
        if (unlikely(!__pyx_t_8)) {
          PyObject* exc_type = PyErr_Occurred();
          if (exc_type) {
            if (unlikely(!__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) __PYX_ERR(0, 1143, __pyx_L1_error)
            PyErr_Clear();
          }
          break;
        }
      }
      __Pyx_GOTREF(__pyx_t_8);
      __Pyx_XGOTREF(__pyx_cur_scope->__pyx_v_t);
      __Pyx_XDECREF_SET(__pyx_cur_scope->__pyx_v_t, __pyx_t_8);
      __Pyx_GIVEREF(__pyx_t_8);
      __pyx_t_8 = 0;

      /* "unicorn_binance_rest_api/manager.py":1144
 *                 return
 *             for t in trades:
 *                 yield t             # <<<<<<<<<<<<<<
 *             last_id = trades[-1][self.AGG_ID]
 * 
*/
      __Pyx_INCREF(__pyx_cur_scope->__pyx_v_t);
      __pyx_r = __pyx_cur_scope->__pyx_v_t;
      __Pyx_XGIVEREF(__pyx_t_4);
      __pyx_cur_scope->__pyx_t_1 = __pyx_t_4;
      __pyx_cur_scope->__pyx_t_0 = __pyx_t_7;
      __pyx_cur_scope->__pyx_t_2 = __pyx_t_9;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      __Pyx_Coroutine_ResetAndClearException(__pyx_generator);
      /* return from generator, yielding value */
      __pyx_generator->resume_label = 2;
      return __pyx_r;
      __pyx_L23_resume_from_yield:;
      __pyx_t_4 = __pyx_cur_scope->__pyx_t_1;
      __pyx_cur_scope->__pyx_t_1 = 0;
      __Pyx_XGOTREF(__pyx_t_4);
      __pyx_t_7 = __pyx_cur_scope->__pyx_t_0;
      __pyx_t_9 = __pyx_cur_scope->__pyx_t_2;
      if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 1144, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":1143
 *             if len(trades) == 0:
 *                 return
 *             for t in trades:             # <<<<<<<<<<<<<<
 *                 yield t
 *             last_id = trades[-1][self.AGG_ID]
*/
    }
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

    /* "unicorn_binance_rest_api/manager.py":1145
 *             for t in trades:
 *                 yield t
 *             last_id = trades[-1][self.AGG_ID]             # <<<<<<<<<<<<<<
 * 
 *     def get_klines(self, **params):
*/
    __pyx_t_4 = __Pyx_GetItemInt(__pyx_cur_scope->__pyx_v_trades, -1L, long, 1, __Pyx_PyLong_From_long, 0, 1, 1, 1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1145, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_mstate_global->__pyx_n_u_AGG_ID); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1145, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_8);
    __pyx_t_3 = __Pyx_PyObject_GetItem(__pyx_t_4, __pyx_t_8); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1145, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
    __Pyx_GOTREF(__pyx_cur_scope->__pyx_v_last_id);
    __Pyx_DECREF_SET(__pyx_cur_scope->__pyx_v_last_id, __pyx_t_3);
    __Pyx_GIVEREF(__pyx_t_3);
    __pyx_t_3 = 0;
  }
  CYTHON_MAYBE_UNUSED_VAR(__pyx_cur_scope);

  /* "unicorn_binance_rest_api/manager.py":1058
 *         return self._get('aggTrades', data=params, version=self.PRIVATE_API_VERSION)
 * 
 *     def aggregate_trade_iter(self, symbol, start_str=None, last_id=None):             # <<<<<<<<<<<<<<
 *         """
 *         Iterate over aggregate trade data from (start_time or last_id) to
*/

  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_8);
  if (__Pyx_PyErr_Occurred()) {
    __Pyx_Generator_Replace_StopIteration(0);
    __Pyx_AddTraceback("aggregate_trade_iter", __pyx_clineno, __pyx_lineno, __pyx_filename);
  }
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  #if !CYTHON_USE_EXC_INFO_STACK
  __Pyx_Coroutine_ResetAndClearException(__pyx_generator);
  #endif
  __pyx_generator->resume_label = -1;
  __Pyx_Coroutine_clear((PyObject*)__pyx_generator);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":1147
 *             last_id = trades[-1][self.AGG_ID]
 * 
 *     def get_klines(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Kline/candlestick bars for a symbol. Klines are uniquely identified by their open time.
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_90get_klines(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_89get_klines, "\n        Kline/candlestick bars for a symbol. Klines are uniquely identified by their open time.\n\n        https://binance-docs.github.io/apidocs/spot/en/#klinecandlestick-data\n\n        :param symbol: required\n        :type symbol: str\n        :param interval: -\n        :type interval: str\n        :param limit: - Default 500; max 500.\n        :type limit: int\n        :param startTime:\n        :type startTime: int\n        :param endTime:\n        :type endTime: int\n\n        :returns: API response\n\n        .. code-block:: python\n\n            [\n                [\n                    1499040000000,      # Open time\n                    \"0.01634790\",       # Open\n                    \"0.80000000\",       # High\n                    \"0.01575800\",       # Low\n                    \"0.01577100\",       # Close\n                    \"148976.11427815\",  # Volume\n                    1499644799999,      # Close time\n                    \"2434.19055334\",    # Quote asset volume\n                    308,                # Number of trades\n                    \"1756.87402397\",    # Taker buy base asset volume\n                    \"28.46694368\",      # Taker buy quote asset volume\n                    \"17928899.62484339\" # Can be ignored\n                ]\n            ]\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_90get_klines = {"get_klines", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_90get_klines, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_89get_klines};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_90get_klines(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_klines (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 1147, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 1147, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "get_klines", 1) < 0) __PYX_ERR(0, 1147, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_klines", 1, 1, 1, i); __PYX_ERR(0, 1147, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 1147, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_klines", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 1147, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_klines", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_89get_klines(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_89get_klines(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  size_t __pyx_t_4;
  PyObject *__pyx_t_5 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_klines", 0);

  /* "unicorn_binance_rest_api/manager.py":1188
 * 
 *         """
 *         return self._get('klines', data=params, version=self.PRIVATE_API_VERSION)             # <<<<<<<<<<<<<<
 * 
 *     def _get_earliest_valid_timestamp(self, symbol, interval):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_2 = __pyx_v_self;
  __Pyx_INCREF(__pyx_t_2);
  __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_PRIVATE_API_VERSION); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1188, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __pyx_t_4 = 0;
  {
    PyObject *__pyx_callargs[2 + ((CYTHON_VECTORCALL) ? 2 : 0)] = {__pyx_t_2, __pyx_mstate_global->__pyx_n_u_klines};
    __pyx_t_5 = __Pyx_MakeVectorcallBuilderKwds(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1188, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_data, __pyx_v_params, __pyx_t_5, __pyx_callargs+2, 0) < 0) __PYX_ERR(0, 1188, __pyx_L1_error)
    if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_version_2, __pyx_t_3, __pyx_t_5, __pyx_callargs+2, 1) < 0) __PYX_ERR(0, 1188, __pyx_L1_error)
    __pyx_t_1 = __Pyx_Object_VectorcallMethod_CallFromBuilder(__pyx_mstate_global->__pyx_n_u_get_2, __pyx_callargs+__pyx_t_4, (2-__pyx_t_4) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET), __pyx_t_5);
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1188, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
  }
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":1147
 *             last_id = trades[-1][self.AGG_ID]
 * 
 *     def get_klines(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Kline/candlestick bars for a symbol. Klines are uniquely identified by their open time.
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_klines", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":1190
 *         return self._get('klines', data=params, version=self.PRIVATE_API_VERSION)
 * 
 *     def _get_earliest_valid_timestamp(self, symbol, interval):             # <<<<<<<<<<<<<<
 *         """
 *         Get the earliest valid open timestamp from Binance
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_92_get_earliest_valid_timestamp(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_91_get_earliest_valid_timestamp, "\n        Get the earliest valid open timestamp from Binance\n\n        :param symbol: Name of symbol pair e.g. BNBBTC\n        :type symbol: str\n        :param interval: Binance Kline interval\n        :type interval: str\n\n        :return: first valid timestamp\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_92_get_earliest_valid_timestamp = {"_get_earliest_valid_timestamp", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_92_get_earliest_valid_timestamp, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_91_get_earliest_valid_timestamp};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_92_get_earliest_valid_timestamp(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_symbol = 0;
  PyObject *__pyx_v_interval = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[3] = {0,0,0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("_get_earliest_valid_timestamp (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,&__pyx_mstate_global->__pyx_n_u_symbol,&__pyx_mstate_global->__pyx_n_u_interval,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 1190, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  3:
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 1190, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 1190, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 1190, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "_get_earliest_valid_timestamp", 0) < 0) __PYX_ERR(0, 1190, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 3; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("_get_earliest_valid_timestamp", 1, 3, 3, i); __PYX_ERR(0, 1190, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 3)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 1190, __pyx_L3_error)
      values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 1190, __pyx_L3_error)
      values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 1190, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
    __pyx_v_symbol = values[1];
    __pyx_v_interval = values[2];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("_get_earliest_valid_timestamp", 1, 3, 3, __pyx_nargs); __PYX_ERR(0, 1190, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager._get_earliest_valid_timestamp", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_91_get_earliest_valid_timestamp(__pyx_self, __pyx_v_self, __pyx_v_symbol, __pyx_v_interval);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_91_get_earliest_valid_timestamp(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_symbol, PyObject *__pyx_v_interval) {
  PyObject *__pyx_v_kline = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  size_t __pyx_t_3;
  PyObject *__pyx_t_4 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("_get_earliest_valid_timestamp", 0);

  /* "unicorn_binance_rest_api/manager.py":1202
 * 
 *         """
 *         kline = self.get_klines(             # <<<<<<<<<<<<<<
 *             symbol=symbol,
 *             interval=interval,
*/
  __pyx_t_2 = __pyx_v_self;
  __Pyx_INCREF(__pyx_t_2);

  /* "unicorn_binance_rest_api/manager.py":1207
 *             limit=1,
 *             startTime=0,
 *             endTime=None             # <<<<<<<<<<<<<<
 *         )
 *         return kline[0][0]
*/
  __pyx_t_3 = 0;
  {
    PyObject *__pyx_callargs[2 + ((CYTHON_VECTORCALL) ? 5 : 0)] = {__pyx_t_2, NULL};
    __pyx_t_4 = __Pyx_MakeVectorcallBuilderKwds(5); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1202, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_symbol, __pyx_v_symbol, __pyx_t_4, __pyx_callargs+1, 0) < 0) __PYX_ERR(0, 1202, __pyx_L1_error)
    if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_interval, __pyx_v_interval, __pyx_t_4, __pyx_callargs+1, 1) < 0) __PYX_ERR(0, 1202, __pyx_L1_error)
    if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_limit, __pyx_mstate_global->__pyx_int_1, __pyx_t_4, __pyx_callargs+1, 2) < 0) __PYX_ERR(0, 1202, __pyx_L1_error)
    if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_startTime, __pyx_mstate_global->__pyx_int_0, __pyx_t_4, __pyx_callargs+1, 3) < 0) __PYX_ERR(0, 1202, __pyx_L1_error)
    if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_endTime, Py_None, __pyx_t_4, __pyx_callargs+1, 4) < 0) __PYX_ERR(0, 1202, __pyx_L1_error)
    __pyx_t_1 = __Pyx_Object_VectorcallMethod_CallFromBuilder(__pyx_mstate_global->__pyx_n_u_get_klines, __pyx_callargs+__pyx_t_3, (1-__pyx_t_3) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET), __pyx_t_4);
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1202, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
  }
  __pyx_v_kline = __pyx_t_1;
  __pyx_t_1 = 0;

  /* "unicorn_binance_rest_api/manager.py":1209
 *             endTime=None
 *         )
 *         return kline[0][0]             # <<<<<<<<<<<<<<
 * 
 *     def get_historical_klines(self, symbol, interval, start_str, end_str=None,
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_GetItemInt(__pyx_v_kline, 0, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1209, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_4 = __Pyx_GetItemInt(__pyx_t_1, 0, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1209, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_r = __pyx_t_4;
  __pyx_t_4 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":1190
 *         return self._get('klines', data=params, version=self.PRIVATE_API_VERSION)
 * 
 *     def _get_earliest_valid_timestamp(self, symbol, interval):             # <<<<<<<<<<<<<<
 *         """
 *         Get the earliest valid open timestamp from Binance
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager._get_earliest_valid_timestamp", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_kline);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":1211
 *         return kline[0][0]
 * 
 *     def get_historical_klines(self, symbol, interval, start_str, end_str=None,             # <<<<<<<<<<<<<<
 *                               limit=500):
 *         """
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_94get_historical_klines(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_93get_historical_klines, "\n        Get Historical Klines from Binance\n\n        See dateparser docs for valid start and end string formats http://dateparser.readthedocs.io/en/latest/\n\n        If using offset strings for dates add \"UTC\" to date string e.g. \"now UTC\", \"11 hours ago UTC\"\n\n        :param symbol: Name of symbol pair e.g. BNBBTC\n        :type symbol: str\n        :param interval: Binance Kline interval\n        :type interval: str\n        :param start_str: Start date string in UTC format or timestamp in milliseconds\n        :type start_str: str|int\n        :param end_str: optional - end date string in UTC format or timestamp in milliseconds (default will fetch\n                        everything up to now)\n        :type end_str: str|int\n        :param limit: Default 500; max 1000.\n        :type limit: int\n\n        :return: list of OHLCV values\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_94get_historical_klines = {"get_historical_klines", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_94get_historical_klines, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_93get_historical_klines};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_94get_historical_klines(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_symbol = 0;
  PyObject *__pyx_v_interval = 0;
  PyObject *__pyx_v_start_str = 0;
  PyObject *__pyx_v_end_str = 0;
  PyObject *__pyx_v_limit = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[6] = {0,0,0,0,0,0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_historical_klines (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,&__pyx_mstate_global->__pyx_n_u_symbol,&__pyx_mstate_global->__pyx_n_u_interval,&__pyx_mstate_global->__pyx_n_u_start_str,&__pyx_mstate_global->__pyx_n_u_end_str,&__pyx_mstate_global->__pyx_n_u_limit,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 1211, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  6:
        values[5] = __Pyx_ArgRef_FASTCALL(__pyx_args, 5);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 1211, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  5:
        values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 1211, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  4:
        values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 1211, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  3:
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 1211, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 1211, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 1211, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "get_historical_klines", 0) < 0) __PYX_ERR(0, 1211, __pyx_L3_error)
      if (!values[4]) values[4] = __Pyx_NewRef(((PyObject *)Py_None));
      if (!values[5]) values[5] = __Pyx_NewRef(((PyObject *)((PyObject*)__pyx_mstate_global->__pyx_int_500)));
      for (Py_ssize_t i = __pyx_nargs; i < 4; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_historical_klines", 0, 4, 6, i); __PYX_ERR(0, 1211, __pyx_L3_error) }
      }
    } else {
      switch (__pyx_nargs) {
        case  6:
        values[5] = __Pyx_ArgRef_FASTCALL(__pyx_args, 5);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 1211, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  5:
        values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 1211, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  4:
        values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 1211, __pyx_L3_error)
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 1211, __pyx_L3_error)
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 1211, __pyx_L3_error)
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 1211, __pyx_L3_error)
        break;
        default: goto __pyx_L5_argtuple_error;
      }
      if (!values[4]) values[4] = __Pyx_NewRef(((PyObject *)Py_None));
      if (!values[5]) values[5] = __Pyx_NewRef(((PyObject *)((PyObject*)__pyx_mstate_global->__pyx_int_500)));
    }
    __pyx_v_self = values[0];
    __pyx_v_symbol = values[1];
    __pyx_v_interval = values[2];
    __pyx_v_start_str = values[3];
    __pyx_v_end_str = values[4];
    __pyx_v_limit = values[5];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_historical_klines", 0, 4, 6, __pyx_nargs); __PYX_ERR(0, 1211, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_historical_klines", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_93get_historical_klines(__pyx_self, __pyx_v_self, __pyx_v_symbol, __pyx_v_interval, __pyx_v_start_str, __pyx_v_end_str, __pyx_v_limit);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_93get_historical_klines(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_symbol, PyObject *__pyx_v_interval, PyObject *__pyx_v_start_str, PyObject *__pyx_v_end_str, PyObject *__pyx_v_limit) {
  PyObject *__pyx_v_output_data = NULL;
  PyObject *__pyx_v_timeframe = NULL;
  PyObject *__pyx_v_start_ts = NULL;
  PyObject *__pyx_v_first_valid_ts = NULL;
  PyObject *__pyx_v_end_ts = NULL;
  PyObject *__pyx_v_idx = NULL;
  PyObject *__pyx_v_temp_data = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  size_t __pyx_t_4;
  int __pyx_t_5;
  PyObject *__pyx_t_6 = NULL;
  Py_ssize_t __pyx_t_7;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_historical_klines", 0);

  /* "unicorn_binance_rest_api/manager.py":1236
 *         """
 *         # init our list
 *         output_data = []             # <<<<<<<<<<<<<<
 * 
 *         # convert interval to useful value in seconds
*/
  __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1236, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_v_output_data = __pyx_t_1;
  __pyx_t_1 = 0;

  /* "unicorn_binance_rest_api/manager.py":1239
 * 
 *         # convert interval to useful value in seconds
 *         timeframe = interval_to_milliseconds(interval)             # <<<<<<<<<<<<<<
 * 
 *         # convert our date strings to milliseconds
*/
  __pyx_t_2 = NULL;
  __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_interval_to_milliseconds); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1239, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __pyx_t_4 = 1;
  #if CYTHON_UNPACK_METHODS
  if (unlikely(PyMethod_Check(__pyx_t_3))) {
    __pyx_t_2 = PyMethod_GET_SELF(__pyx_t_3);
    assert(__pyx_t_2);
    PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_3);
    __Pyx_INCREF(__pyx_t_2);
    __Pyx_INCREF(__pyx__function);
    __Pyx_DECREF_SET(__pyx_t_3, __pyx__function);
    __pyx_t_4 = 0;
  }
  #endif
  {
    PyObject *__pyx_callargs[2] = {__pyx_t_2, __pyx_v_interval};
    __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+__pyx_t_4, (2-__pyx_t_4) | (__pyx_t_4*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1239, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
  }
  __pyx_v_timeframe = __pyx_t_1;
  __pyx_t_1 = 0;

  /* "unicorn_binance_rest_api/manager.py":1242
 * 
 *         # convert our date strings to milliseconds
 *         if type(start_str) is int:             # <<<<<<<<<<<<<<
 *             start_ts = start_str
 *         else:
*/
  __pyx_t_5 = (((PyObject *)Py_TYPE(__pyx_v_start_str)) == ((PyObject *)(&PyLong_Type)));
  if (__pyx_t_5) {

    /* "unicorn_binance_rest_api/manager.py":1243
 *         # convert our date strings to milliseconds
 *         if type(start_str) is int:
 *             start_ts = start_str             # <<<<<<<<<<<<<<
 *         else:
 *             start_ts = date_to_milliseconds(start_str)
*/
    __Pyx_INCREF(__pyx_v_start_str);
    __pyx_v_start_ts = __pyx_v_start_str;

    /* "unicorn_binance_rest_api/manager.py":1242
 * 
 *         # convert our date strings to milliseconds
 *         if type(start_str) is int:             # <<<<<<<<<<<<<<
 *             start_ts = start_str
 *         else:
*/
    goto __pyx_L3;
  }

  /* "unicorn_binance_rest_api/manager.py":1245
 *             start_ts = start_str
 *         else:
 *             start_ts = date_to_milliseconds(start_str)             # <<<<<<<<<<<<<<
 * 
 *         # establish first available start timestamp
*/
  /*else*/ {
    __pyx_t_3 = NULL;
    __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_date_to_milliseconds); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1245, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_4 = 1;
    #if CYTHON_UNPACK_METHODS
    if (unlikely(PyMethod_Check(__pyx_t_2))) {
      __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
      assert(__pyx_t_3);
      PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_2);
      __Pyx_INCREF(__pyx_t_3);
      __Pyx_INCREF(__pyx__function);
      __Pyx_DECREF_SET(__pyx_t_2, __pyx__function);
      __pyx_t_4 = 0;
    }
    #endif
    {
      PyObject *__pyx_callargs[2] = {__pyx_t_3, __pyx_v_start_str};
      __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_2, __pyx_callargs+__pyx_t_4, (2-__pyx_t_4) | (__pyx_t_4*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
      __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1245, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_1);
    }
    __pyx_v_start_ts = __pyx_t_1;
    __pyx_t_1 = 0;
  }
  __pyx_L3:;

  /* "unicorn_binance_rest_api/manager.py":1248
 * 
 *         # establish first available start timestamp
 *         first_valid_ts = self._get_earliest_valid_timestamp(symbol, interval)             # <<<<<<<<<<<<<<
 *         start_ts = max(start_ts, first_valid_ts)
 * 
*/
  __pyx_t_2 = __pyx_v_self;
  __Pyx_INCREF(__pyx_t_2);
  __pyx_t_4 = 0;
  {
    PyObject *__pyx_callargs[3] = {__pyx_t_2, __pyx_v_symbol, __pyx_v_interval};
    __pyx_t_1 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_get_earliest_valid_timestamp, __pyx_callargs+__pyx_t_4, (3-__pyx_t_4) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1248, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
  }
  __pyx_v_first_valid_ts = __pyx_t_1;
  __pyx_t_1 = 0;

  /* "unicorn_binance_rest_api/manager.py":1249
 *         # establish first available start timestamp
 *         first_valid_ts = self._get_earliest_valid_timestamp(symbol, interval)
 *         start_ts = max(start_ts, first_valid_ts)             # <<<<<<<<<<<<<<
 * 
 *         # if an end time was passed convert it
*/
  __Pyx_INCREF(__pyx_v_first_valid_ts);
  __pyx_t_1 = __pyx_v_first_valid_ts;
  __Pyx_INCREF(__pyx_v_start_ts);
  __pyx_t_2 = __pyx_v_start_ts;
  __pyx_t_6 = PyObject_RichCompare(__pyx_t_1, __pyx_t_2, Py_GT); __Pyx_XGOTREF(__pyx_t_6); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1249, __pyx_L1_error)
  __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely((__pyx_t_5 < 0))) __PYX_ERR(0, 1249, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
  if (__pyx_t_5) {
    __Pyx_INCREF(__pyx_t_1);
    __pyx_t_3 = __pyx_t_1;
  } else {
    __Pyx_INCREF(__pyx_t_2);
    __pyx_t_3 = __pyx_t_2;
  }
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_t_1 = __pyx_t_3;
  __Pyx_INCREF(__pyx_t_1);
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  __Pyx_DECREF_SET(__pyx_v_start_ts, __pyx_t_1);
  __pyx_t_1 = 0;

  /* "unicorn_binance_rest_api/manager.py":1252
 * 
 *         # if an end time was passed convert it
 *         end_ts = None             # <<<<<<<<<<<<<<
 *         if end_str:
 *             if type(end_str) is int:
*/
  __Pyx_INCREF(Py_None);
  __pyx_v_end_ts = Py_None;

  /* "unicorn_binance_rest_api/manager.py":1253
 *         # if an end time was passed convert it
 *         end_ts = None
 *         if end_str:             # <<<<<<<<<<<<<<
 *             if type(end_str) is int:
 *                 end_ts = end_str
*/
  __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_v_end_str); if (unlikely((__pyx_t_5 < 0))) __PYX_ERR(0, 1253, __pyx_L1_error)
  if (__pyx_t_5) {

    /* "unicorn_binance_rest_api/manager.py":1254
 *         end_ts = None
 *         if end_str:
 *             if type(end_str) is int:             # <<<<<<<<<<<<<<
 *                 end_ts = end_str
 *             else:
*/
    __pyx_t_5 = (((PyObject *)Py_TYPE(__pyx_v_end_str)) == ((PyObject *)(&PyLong_Type)));
    if (__pyx_t_5) {

      /* "unicorn_binance_rest_api/manager.py":1255
 *         if end_str:
 *             if type(end_str) is int:
 *                 end_ts = end_str             # <<<<<<<<<<<<<<
 *             else:
 *                 end_ts = date_to_milliseconds(end_str)
*/
      __Pyx_INCREF(__pyx_v_end_str);
      __Pyx_DECREF_SET(__pyx_v_end_ts, __pyx_v_end_str);

      /* "unicorn_binance_rest_api/manager.py":1254
 *         end_ts = None
 *         if end_str:
 *             if type(end_str) is int:             # <<<<<<<<<<<<<<
 *                 end_ts = end_str
 *             else:
*/
      goto __pyx_L5;
    }

    /* "unicorn_binance_rest_api/manager.py":1257
 *                 end_ts = end_str
 *             else:
 *                 end_ts = date_to_milliseconds(end_str)             # <<<<<<<<<<<<<<
 * 
 *         idx = 0
*/
    /*else*/ {
      __pyx_t_3 = NULL;
      __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_date_to_milliseconds); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1257, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_4 = 1;
      #if CYTHON_UNPACK_METHODS
      if (unlikely(PyMethod_Check(__pyx_t_2))) {
        __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
        assert(__pyx_t_3);
        PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_2);
        __Pyx_INCREF(__pyx_t_3);
        __Pyx_INCREF(__pyx__function);
        __Pyx_DECREF_SET(__pyx_t_2, __pyx__function);
        __pyx_t_4 = 0;
      }
      #endif
      {
        PyObject *__pyx_callargs[2] = {__pyx_t_3, __pyx_v_end_str};
        __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_2, __pyx_callargs+__pyx_t_4, (2-__pyx_t_4) | (__pyx_t_4*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1257, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_1);
      }
      __Pyx_DECREF_SET(__pyx_v_end_ts, __pyx_t_1);
      __pyx_t_1 = 0;
    }
    __pyx_L5:;

    /* "unicorn_binance_rest_api/manager.py":1253
 *         # if an end time was passed convert it
 *         end_ts = None
 *         if end_str:             # <<<<<<<<<<<<<<
 *             if type(end_str) is int:
 *                 end_ts = end_str
*/
  }

  /* "unicorn_binance_rest_api/manager.py":1259
 *                 end_ts = date_to_milliseconds(end_str)
 * 
 *         idx = 0             # <<<<<<<<<<<<<<
 *         while True:
 *             # fetch the klines from start_ts up to max 500 entries or the end_ts if set
*/
  __Pyx_INCREF(__pyx_mstate_global->__pyx_int_0);
  __pyx_v_idx = __pyx_mstate_global->__pyx_int_0;

  /* "unicorn_binance_rest_api/manager.py":1260
 * 
 *         idx = 0
 *         while True:             # <<<<<<<<<<<<<<
 *             # fetch the klines from start_ts up to max 500 entries or the end_ts if set
 *             temp_data = self.get_klines(
*/
  while (1) {

    /* "unicorn_binance_rest_api/manager.py":1262
 *         while True:
 *             # fetch the klines from start_ts up to max 500 entries or the end_ts if set
 *             temp_data = self.get_klines(             # <<<<<<<<<<<<<<
 *                 symbol=symbol,
 *                 interval=interval,
*/
    __pyx_t_2 = __pyx_v_self;
    __Pyx_INCREF(__pyx_t_2);

    /* "unicorn_binance_rest_api/manager.py":1267
 *                 limit=limit,
 *                 startTime=start_ts,
 *                 endTime=end_ts             # <<<<<<<<<<<<<<
 *             )
 * 
*/
    __pyx_t_4 = 0;
    {
      PyObject *__pyx_callargs[2 + ((CYTHON_VECTORCALL) ? 5 : 0)] = {__pyx_t_2, NULL};
      __pyx_t_3 = __Pyx_MakeVectorcallBuilderKwds(5); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1262, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_3);
      if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_symbol, __pyx_v_symbol, __pyx_t_3, __pyx_callargs+1, 0) < 0) __PYX_ERR(0, 1262, __pyx_L1_error)
      if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_interval, __pyx_v_interval, __pyx_t_3, __pyx_callargs+1, 1) < 0) __PYX_ERR(0, 1262, __pyx_L1_error)
      if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_limit, __pyx_v_limit, __pyx_t_3, __pyx_callargs+1, 2) < 0) __PYX_ERR(0, 1262, __pyx_L1_error)
      if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_startTime, __pyx_v_start_ts, __pyx_t_3, __pyx_callargs+1, 3) < 0) __PYX_ERR(0, 1262, __pyx_L1_error)
      if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_endTime, __pyx_v_end_ts, __pyx_t_3, __pyx_callargs+1, 4) < 0) __PYX_ERR(0, 1262, __pyx_L1_error)
      __pyx_t_1 = __Pyx_Object_VectorcallMethod_CallFromBuilder(__pyx_mstate_global->__pyx_n_u_get_klines, __pyx_callargs+__pyx_t_4, (1-__pyx_t_4) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET), __pyx_t_3);
      __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1262, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_1);
    }
    __Pyx_XDECREF_SET(__pyx_v_temp_data, __pyx_t_1);
    __pyx_t_1 = 0;

    /* "unicorn_binance_rest_api/manager.py":1271
 * 
 *             # handle the case where exactly the limit amount of data was returned last loop
 *             if not len(temp_data):             # <<<<<<<<<<<<<<
 *                 break
 * 
*/
    __pyx_t_7 = PyObject_Length(__pyx_v_temp_data); if (unlikely(__pyx_t_7 == ((Py_ssize_t)-1))) __PYX_ERR(0, 1271, __pyx_L1_error)
    __pyx_t_5 = (!(__pyx_t_7 != 0));
    if (__pyx_t_5) {

      /* "unicorn_binance_rest_api/manager.py":1272
 *             # handle the case where exactly the limit amount of data was returned last loop
 *             if not len(temp_data):
 *                 break             # <<<<<<<<<<<<<<
 * 
 *             # append this loops data to our output data
*/
      goto __pyx_L7_break;

      /* "unicorn_binance_rest_api/manager.py":1271
 * 
 *             # handle the case where exactly the limit amount of data was returned last loop
 *             if not len(temp_data):             # <<<<<<<<<<<<<<
 *                 break
 * 
*/
    }

    /* "unicorn_binance_rest_api/manager.py":1275
 * 
 *             # append this loops data to our output data
 *             output_data += temp_data             # <<<<<<<<<<<<<<
 * 
 *             # set our start timestamp using the last value in the array
*/
    __pyx_t_1 = PyNumber_InPlaceAdd(__pyx_v_output_data, __pyx_v_temp_data); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1275, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __Pyx_DECREF_SET(__pyx_v_output_data, __pyx_t_1);
    __pyx_t_1 = 0;

    /* "unicorn_binance_rest_api/manager.py":1278
 * 
 *             # set our start timestamp using the last value in the array
 *             start_ts = temp_data[-1][0]             # <<<<<<<<<<<<<<
 * 
 *             idx += 1
*/
    __pyx_t_1 = __Pyx_GetItemInt(__pyx_v_temp_data, -1L, long, 1, __Pyx_PyLong_From_long, 0, 1, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1278, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_t_3 = __Pyx_GetItemInt(__pyx_t_1, 0, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1278, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __Pyx_DECREF_SET(__pyx_v_start_ts, __pyx_t_3);
    __pyx_t_3 = 0;

    /* "unicorn_binance_rest_api/manager.py":1280
 *             start_ts = temp_data[-1][0]
 * 
 *             idx += 1             # <<<<<<<<<<<<<<
 *             # check if we received less than the required limit and exit the loop
 *             if len(temp_data) < limit:
*/
    __pyx_t_3 = __Pyx_PyLong_AddObjC(__pyx_v_idx, __pyx_mstate_global->__pyx_int_1, 1, 1, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1280, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF_SET(__pyx_v_idx, __pyx_t_3);
    __pyx_t_3 = 0;

    /* "unicorn_binance_rest_api/manager.py":1282
 *             idx += 1
 *             # check if we received less than the required limit and exit the loop
 *             if len(temp_data) < limit:             # <<<<<<<<<<<<<<
 *                 # exit the while loop
 *                 break
*/
    __pyx_t_7 = PyObject_Length(__pyx_v_temp_data); if (unlikely(__pyx_t_7 == ((Py_ssize_t)-1))) __PYX_ERR(0, 1282, __pyx_L1_error)
    __pyx_t_3 = PyLong_FromSsize_t(__pyx_t_7); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1282, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_1 = PyObject_RichCompare(__pyx_t_3, __pyx_v_limit, Py_LT); __Pyx_XGOTREF(__pyx_t_1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1282, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely((__pyx_t_5 < 0))) __PYX_ERR(0, 1282, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    if (__pyx_t_5) {

      /* "unicorn_binance_rest_api/manager.py":1284
 *             if len(temp_data) < limit:
 *                 # exit the while loop
 *                 break             # <<<<<<<<<<<<<<
 * 
 *             # increment next call by our timeframe
*/
      goto __pyx_L7_break;

      /* "unicorn_binance_rest_api/manager.py":1282
 *             idx += 1
 *             # check if we received less than the required limit and exit the loop
 *             if len(temp_data) < limit:             # <<<<<<<<<<<<<<
 *                 # exit the while loop
 *                 break
*/
    }

    /* "unicorn_binance_rest_api/manager.py":1287
 * 
 *             # increment next call by our timeframe
 *             start_ts += timeframe             # <<<<<<<<<<<<<<
 * 
 *             # sleep after every 3rd call to be kind to the API
*/
    __pyx_t_1 = PyNumber_InPlaceAdd(__pyx_v_start_ts, __pyx_v_timeframe); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1287, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __Pyx_DECREF_SET(__pyx_v_start_ts, __pyx_t_1);
    __pyx_t_1 = 0;

    /* "unicorn_binance_rest_api/manager.py":1290
 * 
 *             # sleep after every 3rd call to be kind to the API
 *             if idx % 3 == 0:             # <<<<<<<<<<<<<<
 *                 time.sleep(1)
 * 
*/
    __pyx_t_1 = __Pyx_PyLong_RemainderObjC(__pyx_v_idx, __pyx_mstate_global->__pyx_int_3, 3, 0, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1290, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_t_5 = (__Pyx_PyLong_BoolEqObjC(__pyx_t_1, __pyx_mstate_global->__pyx_int_0, 0, 0)); if (unlikely((__pyx_t_5 < 0))) __PYX_ERR(0, 1290, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    if (__pyx_t_5) {

      /* "unicorn_binance_rest_api/manager.py":1291
 *             # sleep after every 3rd call to be kind to the API
 *             if idx % 3 == 0:
 *                 time.sleep(1)             # <<<<<<<<<<<<<<
 * 
 *         return output_data
*/
      __pyx_t_3 = NULL;
      __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_time); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1291, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_sleep); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1291, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_4 = 1;
      #if CYTHON_UNPACK_METHODS
      if (unlikely(PyMethod_Check(__pyx_t_6))) {
        __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_6);
        assert(__pyx_t_3);
        PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_6);
        __Pyx_INCREF(__pyx_t_3);
        __Pyx_INCREF(__pyx__function);
        __Pyx_DECREF_SET(__pyx_t_6, __pyx__function);
        __pyx_t_4 = 0;
      }
      #endif
      {
        PyObject *__pyx_callargs[2] = {__pyx_t_3, __pyx_mstate_global->__pyx_int_1};
        __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_6, __pyx_callargs+__pyx_t_4, (2-__pyx_t_4) | (__pyx_t_4*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1291, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_1);
      }
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

      /* "unicorn_binance_rest_api/manager.py":1290
 * 
 *             # sleep after every 3rd call to be kind to the API
 *             if idx % 3 == 0:             # <<<<<<<<<<<<<<
 *                 time.sleep(1)
 * 
*/
    }
  }
  __pyx_L7_break:;

  /* "unicorn_binance_rest_api/manager.py":1293
 *                 time.sleep(1)
 * 
 *         return output_data             # <<<<<<<<<<<<<<
 * 
 *     def get_historical_klines_generator(self, symbol, interval, start_str, end_str=None):
*/
  __Pyx_XDECREF(__pyx_r);
  __Pyx_INCREF(__pyx_v_output_data);
  __pyx_r = __pyx_v_output_data;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":1211
 *         return kline[0][0]
 * 
 *     def get_historical_klines(self, symbol, interval, start_str, end_str=None,             # <<<<<<<<<<<<<<
 *                               limit=500):
 *         """
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_historical_klines", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_output_data);
  __Pyx_XDECREF(__pyx_v_timeframe);
  __Pyx_XDECREF(__pyx_v_start_ts);
  __Pyx_XDECREF(__pyx_v_first_valid_ts);
  __Pyx_XDECREF(__pyx_v_end_ts);
  __Pyx_XDECREF(__pyx_v_idx);
  __Pyx_XDECREF(__pyx_v_temp_data);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
static PyObject *__pyx_gb_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_97generator1(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value); /* proto */

/* "unicorn_binance_rest_api/manager.py":1295
 *         return output_data
 * 
 *     def get_historical_klines_generator(self, symbol, interval, start_str, end_str=None):             # <<<<<<<<<<<<<<
 *         """
 *         Get Historical Klines from Binance
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_96get_historical_klines_generator(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_95get_historical_klines_generator, "\n        Get Historical Klines from Binance\n\n        See dateparser docs for valid start and end string formats http://dateparser.readthedocs.io/en/latest/\n\n        If using offset strings for dates add \"UTC\" to date string e.g. \"now UTC\", \"11 hours ago UTC\"\n\n        :param symbol: Name of symbol pair e.g. BNBBTC\n        :type symbol: str\n        :param interval: Binance Kline interval\n        :type interval: str\n        :param start_str: Start date string in UTC format or timestamp in milliseconds\n        :type start_str: str|int\n        :param end_str: optional - end date string in UTC format or timestamp in milliseconds (default will fetch\n                        everything up to now)\n        :type end_str: str|int\n\n        :return: generator of OHLCV values\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_96get_historical_klines_generator = {"get_historical_klines_generator", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_96get_historical_klines_generator, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_95get_historical_klines_generator};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_96get_historical_klines_generator(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_symbol = 0;
  PyObject *__pyx_v_interval = 0;
  PyObject *__pyx_v_start_str = 0;
  PyObject *__pyx_v_end_str = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[5] = {0,0,0,0,0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_historical_klines_generator (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,&__pyx_mstate_global->__pyx_n_u_symbol,&__pyx_mstate_global->__pyx_n_u_interval,&__pyx_mstate_global->__pyx_n_u_start_str,&__pyx_mstate_global->__pyx_n_u_end_str,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 1295, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  5:
        values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 1295, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  4:
        values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 1295, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  3:
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 1295, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 1295, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 1295, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "get_historical_klines_generator", 0) < 0) __PYX_ERR(0, 1295, __pyx_L3_error)
      if (!values[4]) values[4] = __Pyx_NewRef(((PyObject *)Py_None));
      for (Py_ssize_t i = __pyx_nargs; i < 4; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_historical_klines_generator", 0, 4, 5, i); __PYX_ERR(0, 1295, __pyx_L3_error) }
      }
    } else {
      switch (__pyx_nargs) {
        case  5:
        values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 1295, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  4:
        values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 1295, __pyx_L3_error)
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 1295, __pyx_L3_error)
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 1295, __pyx_L3_error)
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 1295, __pyx_L3_error)
        break;
        default: goto __pyx_L5_argtuple_error;
      }
      if (!values[4]) values[4] = __Pyx_NewRef(((PyObject *)Py_None));
    }
    __pyx_v_self = values[0];
    __pyx_v_symbol = values[1];
    __pyx_v_interval = values[2];
    __pyx_v_start_str = values[3];
    __pyx_v_end_str = values[4];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_historical_klines_generator", 0, 4, 5, __pyx_nargs); __PYX_ERR(0, 1295, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_historical_klines_generator", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_95get_historical_klines_generator(__pyx_self, __pyx_v_self, __pyx_v_symbol, __pyx_v_interval, __pyx_v_start_str, __pyx_v_end_str);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_95get_historical_klines_generator(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_symbol, PyObject *__pyx_v_interval, PyObject *__pyx_v_start_str, PyObject *__pyx_v_end_str) {
  struct __pyx_obj_24unicorn_binance_rest_api_7manager___pyx_scope_struct_2_get_historical_klines_generator *__pyx_cur_scope;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_historical_klines_generator", 0);
  __pyx_cur_scope = (struct __pyx_obj_24unicorn_binance_rest_api_7manager___pyx_scope_struct_2_get_historical_klines_generator *)__pyx_tp_new_24unicorn_binance_rest_api_7manager___pyx_scope_struct_2_get_historical_klines_generator(__pyx_mstate_global->__pyx_ptype_24unicorn_binance_rest_api_7manager___pyx_scope_struct_2_get_historical_klines_generator, __pyx_mstate_global->__pyx_empty_tuple, NULL);
  if (unlikely(!__pyx_cur_scope)) {
    __pyx_cur_scope = ((struct __pyx_obj_24unicorn_binance_rest_api_7manager___pyx_scope_struct_2_get_historical_klines_generator *)Py_None);
    __Pyx_INCREF(Py_None);
    __PYX_ERR(0, 1295, __pyx_L1_error)
  } else {
    __Pyx_GOTREF((PyObject *)__pyx_cur_scope);
  }
  __pyx_cur_scope->__pyx_v_self = __pyx_v_self;
  __Pyx_INCREF(__pyx_cur_scope->__pyx_v_self);
  __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_self);
  __pyx_cur_scope->__pyx_v_symbol = __pyx_v_symbol;
  __Pyx_INCREF(__pyx_cur_scope->__pyx_v_symbol);
  __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_symbol);
  __pyx_cur_scope->__pyx_v_interval = __pyx_v_interval;
  __Pyx_INCREF(__pyx_cur_scope->__pyx_v_interval);
  __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_interval);
  __pyx_cur_scope->__pyx_v_start_str = __pyx_v_start_str;
  __Pyx_INCREF(__pyx_cur_scope->__pyx_v_start_str);
  __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_start_str);
  __pyx_cur_scope->__pyx_v_end_str = __pyx_v_end_str;
  __Pyx_INCREF(__pyx_cur_scope->__pyx_v_end_str);
  __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_end_str);
  {
    __pyx_CoroutineObject *gen = __Pyx_Generator_New((__pyx_coroutine_body_t) __pyx_gb_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_97generator1, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[2]), (PyObject *) __pyx_cur_scope, __pyx_mstate_global->__pyx_n_u_get_historical_klines_generator, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_histor, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager); if (unlikely(!gen)) __PYX_ERR(0, 1295, __pyx_L1_error)
    __Pyx_DECREF(__pyx_cur_scope);
    __Pyx_RefNannyFinishContext();
    return (PyObject *) gen;
  }

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_historical_klines_generator", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __Pyx_DECREF((PyObject *)__pyx_cur_scope);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_gb_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_97generator1(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value) /* generator body */
{
  struct __pyx_obj_24unicorn_binance_rest_api_7manager___pyx_scope_struct_2_get_historical_klines_generator *__pyx_cur_scope = ((struct __pyx_obj_24unicorn_binance_rest_api_7manager___pyx_scope_struct_2_get_historical_klines_generator *)__pyx_generator->closure);
  PyObject *__pyx_r = NULL;
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  size_t __pyx_t_4;
  int __pyx_t_5;
  PyObject *__pyx_t_6 = NULL;
  Py_ssize_t __pyx_t_7;
  PyObject *(*__pyx_t_8)(PyObject *);
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_historical_klines_generator", 0);
  switch (__pyx_generator->resume_label) {
    case 0: goto __pyx_L3_first_run;
    case 1: goto __pyx_L12_resume_from_yield;
    default: /* CPython raises the right error here */
    __Pyx_RefNannyFinishContext();
    return NULL;
  }
  __pyx_L3_first_run:;
  if (unlikely(__pyx_sent_value != Py_None)) {
    if (unlikely(__pyx_sent_value)) PyErr_SetString(PyExc_TypeError, "can't send non-None value to a just-started generator");
    __PYX_ERR(0, 1295, __pyx_L1_error)
  }

  /* "unicorn_binance_rest_api/manager.py":1318
 * 
 *         # set up the max limit
 *         limit = 500             # <<<<<<<<<<<<<<
 * 
 *         # convert interval to useful value in seconds
*/
  __pyx_cur_scope->__pyx_v_limit = 0x1F4;

  /* "unicorn_binance_rest_api/manager.py":1321
 * 
 *         # convert interval to useful value in seconds
 *         timeframe = interval_to_milliseconds(interval)             # <<<<<<<<<<<<<<
 * 
 *         # convert our date strings to milliseconds
*/
  __pyx_t_2 = NULL;
  __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_interval_to_milliseconds); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1321, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __pyx_t_4 = 1;
  #if CYTHON_UNPACK_METHODS
  if (unlikely(PyMethod_Check(__pyx_t_3))) {
    __pyx_t_2 = PyMethod_GET_SELF(__pyx_t_3);
    assert(__pyx_t_2);
    PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_3);
    __Pyx_INCREF(__pyx_t_2);
    __Pyx_INCREF(__pyx__function);
    __Pyx_DECREF_SET(__pyx_t_3, __pyx__function);
    __pyx_t_4 = 0;
  }
  #endif
  {
    PyObject *__pyx_callargs[2] = {__pyx_t_2, __pyx_cur_scope->__pyx_v_interval};
    __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+__pyx_t_4, (2-__pyx_t_4) | (__pyx_t_4*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1321, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
  }
  __Pyx_GIVEREF(__pyx_t_1);
  __pyx_cur_scope->__pyx_v_timeframe = __pyx_t_1;
  __pyx_t_1 = 0;

  /* "unicorn_binance_rest_api/manager.py":1324
 * 
 *         # convert our date strings to milliseconds
 *         if type(start_str) is int:             # <<<<<<<<<<<<<<
 *             start_ts = start_str
 *         else:
*/
  __pyx_t_5 = (((PyObject *)Py_TYPE(__pyx_cur_scope->__pyx_v_start_str)) == ((PyObject *)(&PyLong_Type)));
  if (__pyx_t_5) {

    /* "unicorn_binance_rest_api/manager.py":1325
 *         # convert our date strings to milliseconds
 *         if type(start_str) is int:
 *             start_ts = start_str             # <<<<<<<<<<<<<<
 *         else:
 *             start_ts = date_to_milliseconds(start_str)
*/
    __Pyx_INCREF(__pyx_cur_scope->__pyx_v_start_str);
    __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_start_str);
    __pyx_cur_scope->__pyx_v_start_ts = __pyx_cur_scope->__pyx_v_start_str;

    /* "unicorn_binance_rest_api/manager.py":1324
 * 
 *         # convert our date strings to milliseconds
 *         if type(start_str) is int:             # <<<<<<<<<<<<<<
 *             start_ts = start_str
 *         else:
*/
    goto __pyx_L4;
  }

  /* "unicorn_binance_rest_api/manager.py":1327
 *             start_ts = start_str
 *         else:
 *             start_ts = date_to_milliseconds(start_str)             # <<<<<<<<<<<<<<
 * 
 *         # establish first available start timestamp
*/
  /*else*/ {
    __pyx_t_3 = NULL;
    __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_date_to_milliseconds); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1327, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_4 = 1;
    #if CYTHON_UNPACK_METHODS
    if (unlikely(PyMethod_Check(__pyx_t_2))) {
      __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
      assert(__pyx_t_3);
      PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_2);
      __Pyx_INCREF(__pyx_t_3);
      __Pyx_INCREF(__pyx__function);
      __Pyx_DECREF_SET(__pyx_t_2, __pyx__function);
      __pyx_t_4 = 0;
    }
    #endif
    {
      PyObject *__pyx_callargs[2] = {__pyx_t_3, __pyx_cur_scope->__pyx_v_start_str};
      __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_2, __pyx_callargs+__pyx_t_4, (2-__pyx_t_4) | (__pyx_t_4*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
      __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1327, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_1);
    }
    __Pyx_GIVEREF(__pyx_t_1);
    __pyx_cur_scope->__pyx_v_start_ts = __pyx_t_1;
    __pyx_t_1 = 0;
  }
  __pyx_L4:;

  /* "unicorn_binance_rest_api/manager.py":1330
 * 
 *         # establish first available start timestamp
 *         first_valid_ts = self._get_earliest_valid_timestamp(symbol, interval)             # <<<<<<<<<<<<<<
 *         start_ts = max(start_ts, first_valid_ts)
 * 
*/
  __pyx_t_2 = __pyx_cur_scope->__pyx_v_self;
  __Pyx_INCREF(__pyx_t_2);
  __pyx_t_4 = 0;
  {
    PyObject *__pyx_callargs[3] = {__pyx_t_2, __pyx_cur_scope->__pyx_v_symbol, __pyx_cur_scope->__pyx_v_interval};
    __pyx_t_1 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_get_earliest_valid_timestamp, __pyx_callargs+__pyx_t_4, (3-__pyx_t_4) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1330, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
  }
  __Pyx_GIVEREF(__pyx_t_1);
  __pyx_cur_scope->__pyx_v_first_valid_ts = __pyx_t_1;
  __pyx_t_1 = 0;

  /* "unicorn_binance_rest_api/manager.py":1331
 *         # establish first available start timestamp
 *         first_valid_ts = self._get_earliest_valid_timestamp(symbol, interval)
 *         start_ts = max(start_ts, first_valid_ts)             # <<<<<<<<<<<<<<
 * 
 *         # if an end time was passed convert it
*/
  __Pyx_INCREF(__pyx_cur_scope->__pyx_v_first_valid_ts);
  __pyx_t_1 = __pyx_cur_scope->__pyx_v_first_valid_ts;
  __Pyx_INCREF(__pyx_cur_scope->__pyx_v_start_ts);
  __pyx_t_2 = __pyx_cur_scope->__pyx_v_start_ts;
  __pyx_t_6 = PyObject_RichCompare(__pyx_t_1, __pyx_t_2, Py_GT); __Pyx_XGOTREF(__pyx_t_6); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1331, __pyx_L1_error)
  __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely((__pyx_t_5 < 0))) __PYX_ERR(0, 1331, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
  if (__pyx_t_5) {
    __Pyx_INCREF(__pyx_t_1);
    __pyx_t_3 = __pyx_t_1;
  } else {
    __Pyx_INCREF(__pyx_t_2);
    __pyx_t_3 = __pyx_t_2;
  }
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_t_1 = __pyx_t_3;
  __Pyx_INCREF(__pyx_t_1);
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  __Pyx_GOTREF(__pyx_cur_scope->__pyx_v_start_ts);
  __Pyx_DECREF_SET(__pyx_cur_scope->__pyx_v_start_ts, __pyx_t_1);
  __Pyx_GIVEREF(__pyx_t_1);
  __pyx_t_1 = 0;

  /* "unicorn_binance_rest_api/manager.py":1334
 * 
 *         # if an end time was passed convert it
 *         end_ts = None             # <<<<<<<<<<<<<<
 *         if end_str:
 *             if type(end_str) is int:
*/
  __Pyx_INCREF(Py_None);
  __Pyx_GIVEREF(Py_None);
  __pyx_cur_scope->__pyx_v_end_ts = Py_None;

  /* "unicorn_binance_rest_api/manager.py":1335
 *         # if an end time was passed convert it
 *         end_ts = None
 *         if end_str:             # <<<<<<<<<<<<<<
 *             if type(end_str) is int:
 *                 end_ts = end_str
*/
  __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_cur_scope->__pyx_v_end_str); if (unlikely((__pyx_t_5 < 0))) __PYX_ERR(0, 1335, __pyx_L1_error)
  if (__pyx_t_5) {

    /* "unicorn_binance_rest_api/manager.py":1336
 *         end_ts = None
 *         if end_str:
 *             if type(end_str) is int:             # <<<<<<<<<<<<<<
 *                 end_ts = end_str
 *             else:
*/
    __pyx_t_5 = (((PyObject *)Py_TYPE(__pyx_cur_scope->__pyx_v_end_str)) == ((PyObject *)(&PyLong_Type)));
    if (__pyx_t_5) {

      /* "unicorn_binance_rest_api/manager.py":1337
 *         if end_str:
 *             if type(end_str) is int:
 *                 end_ts = end_str             # <<<<<<<<<<<<<<
 *             else:
 *                 end_ts = date_to_milliseconds(end_str)
*/
      __Pyx_INCREF(__pyx_cur_scope->__pyx_v_end_str);
      __Pyx_GOTREF(__pyx_cur_scope->__pyx_v_end_ts);
      __Pyx_DECREF_SET(__pyx_cur_scope->__pyx_v_end_ts, __pyx_cur_scope->__pyx_v_end_str);
      __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_end_str);

      /* "unicorn_binance_rest_api/manager.py":1336
 *         end_ts = None
 *         if end_str:
 *             if type(end_str) is int:             # <<<<<<<<<<<<<<
 *                 end_ts = end_str
 *             else:
*/
      goto __pyx_L6;
    }

    /* "unicorn_binance_rest_api/manager.py":1339
 *                 end_ts = end_str
 *             else:
 *                 end_ts = date_to_milliseconds(end_str)             # <<<<<<<<<<<<<<
 * 
 *         idx = 0
*/
    /*else*/ {
      __pyx_t_3 = NULL;
      __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_date_to_milliseconds); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1339, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_4 = 1;
      #if CYTHON_UNPACK_METHODS
      if (unlikely(PyMethod_Check(__pyx_t_2))) {
        __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
        assert(__pyx_t_3);
        PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_2);
        __Pyx_INCREF(__pyx_t_3);
        __Pyx_INCREF(__pyx__function);
        __Pyx_DECREF_SET(__pyx_t_2, __pyx__function);
        __pyx_t_4 = 0;
      }
      #endif
      {
        PyObject *__pyx_callargs[2] = {__pyx_t_3, __pyx_cur_scope->__pyx_v_end_str};
        __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_2, __pyx_callargs+__pyx_t_4, (2-__pyx_t_4) | (__pyx_t_4*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1339, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_1);
      }
      __Pyx_GOTREF(__pyx_cur_scope->__pyx_v_end_ts);
      __Pyx_DECREF_SET(__pyx_cur_scope->__pyx_v_end_ts, __pyx_t_1);
      __Pyx_GIVEREF(__pyx_t_1);
      __pyx_t_1 = 0;
    }
    __pyx_L6:;

    /* "unicorn_binance_rest_api/manager.py":1335
 *         # if an end time was passed convert it
 *         end_ts = None
 *         if end_str:             # <<<<<<<<<<<<<<
 *             if type(end_str) is int:
 *                 end_ts = end_str
*/
  }

  /* "unicorn_binance_rest_api/manager.py":1341
 *                 end_ts = date_to_milliseconds(end_str)
 * 
 *         idx = 0             # <<<<<<<<<<<<<<
 *         while True:
 *             # fetch the klines from start_ts up to max 500 entries or the end_ts if set
*/
  __Pyx_INCREF(__pyx_mstate_global->__pyx_int_0);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_int_0);
  __pyx_cur_scope->__pyx_v_idx = __pyx_mstate_global->__pyx_int_0;

  /* "unicorn_binance_rest_api/manager.py":1342
 * 
 *         idx = 0
 *         while True:             # <<<<<<<<<<<<<<
 *             # fetch the klines from start_ts up to max 500 entries or the end_ts if set
 *             output_data = self.get_klines(
*/
  while (1) {

    /* "unicorn_binance_rest_api/manager.py":1344
 *         while True:
 *             # fetch the klines from start_ts up to max 500 entries or the end_ts if set
 *             output_data = self.get_klines(             # <<<<<<<<<<<<<<
 *                 symbol=symbol,
 *                 interval=interval,
*/
    __pyx_t_2 = __pyx_cur_scope->__pyx_v_self;
    __Pyx_INCREF(__pyx_t_2);

    /* "unicorn_binance_rest_api/manager.py":1347
 *                 symbol=symbol,
 *                 interval=interval,
 *                 limit=limit,             # <<<<<<<<<<<<<<
 *                 startTime=start_ts,
 *                 endTime=end_ts
*/
    __pyx_t_3 = __Pyx_PyLong_From_long(__pyx_cur_scope->__pyx_v_limit); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1347, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);

    /* "unicorn_binance_rest_api/manager.py":1349
 *                 limit=limit,
 *                 startTime=start_ts,
 *                 endTime=end_ts             # <<<<<<<<<<<<<<
 *             )
 * 
*/
    __pyx_t_4 = 0;
    {
      PyObject *__pyx_callargs[2 + ((CYTHON_VECTORCALL) ? 5 : 0)] = {__pyx_t_2, NULL};
      __pyx_t_6 = __Pyx_MakeVectorcallBuilderKwds(5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1344, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_6);
      if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_symbol, __pyx_cur_scope->__pyx_v_symbol, __pyx_t_6, __pyx_callargs+1, 0) < 0) __PYX_ERR(0, 1344, __pyx_L1_error)
      if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_interval, __pyx_cur_scope->__pyx_v_interval, __pyx_t_6, __pyx_callargs+1, 1) < 0) __PYX_ERR(0, 1344, __pyx_L1_error)
      if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_limit, __pyx_t_3, __pyx_t_6, __pyx_callargs+1, 2) < 0) __PYX_ERR(0, 1344, __pyx_L1_error)
      if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_startTime, __pyx_cur_scope->__pyx_v_start_ts, __pyx_t_6, __pyx_callargs+1, 3) < 0) __PYX_ERR(0, 1344, __pyx_L1_error)
      if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_endTime, __pyx_cur_scope->__pyx_v_end_ts, __pyx_t_6, __pyx_callargs+1, 4) < 0) __PYX_ERR(0, 1344, __pyx_L1_error)
      __pyx_t_1 = __Pyx_Object_VectorcallMethod_CallFromBuilder(__pyx_mstate_global->__pyx_n_u_get_klines, __pyx_callargs+__pyx_t_4, (1-__pyx_t_4) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET), __pyx_t_6);
      __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1344, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_1);
    }
    __Pyx_XGOTREF(__pyx_cur_scope->__pyx_v_output_data);
    __Pyx_XDECREF_SET(__pyx_cur_scope->__pyx_v_output_data, __pyx_t_1);
    __Pyx_GIVEREF(__pyx_t_1);
    __pyx_t_1 = 0;

    /* "unicorn_binance_rest_api/manager.py":1353
 * 
 *             # handle the case where exactly the limit amount of data was returned last loop
 *             if not len(output_data):             # <<<<<<<<<<<<<<
 *                 break
 * 
*/
    __pyx_t_7 = PyObject_Length(__pyx_cur_scope->__pyx_v_output_data); if (unlikely(__pyx_t_7 == ((Py_ssize_t)-1))) __PYX_ERR(0, 1353, __pyx_L1_error)
    __pyx_t_5 = (!(__pyx_t_7 != 0));
    if (__pyx_t_5) {

      /* "unicorn_binance_rest_api/manager.py":1354
 *             # handle the case where exactly the limit amount of data was returned last loop
 *             if not len(output_data):
 *                 break             # <<<<<<<<<<<<<<
 * 
 *             # yield data
*/
      goto __pyx_L8_break;

      /* "unicorn_binance_rest_api/manager.py":1353
 * 
 *             # handle the case where exactly the limit amount of data was returned last loop
 *             if not len(output_data):             # <<<<<<<<<<<<<<
 *                 break
 * 
*/
    }

    /* "unicorn_binance_rest_api/manager.py":1357
 * 
 *             # yield data
 *             for o in output_data:             # <<<<<<<<<<<<<<
 *                 yield o
 * 
*/
    if (likely(PyList_CheckExact(__pyx_cur_scope->__pyx_v_output_data)) || PyTuple_CheckExact(__pyx_cur_scope->__pyx_v_output_data)) {
      __pyx_t_1 = __pyx_cur_scope->__pyx_v_output_data; __Pyx_INCREF(__pyx_t_1);
      __pyx_t_7 = 0;
      __pyx_t_8 = NULL;
    } else {
      __pyx_t_7 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_cur_scope->__pyx_v_output_data); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1357, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_8 = (CYTHON_COMPILING_IN_LIMITED_API) ? PyIter_Next : __Pyx_PyObject_GetIterNextFunc(__pyx_t_1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1357, __pyx_L1_error)
    }
    for (;;) {
      if (likely(!__pyx_t_8)) {
        if (likely(PyList_CheckExact(__pyx_t_1))) {
          {
            Py_ssize_t __pyx_temp = __Pyx_PyList_GET_SIZE(__pyx_t_1);
            #if !CYTHON_ASSUME_SAFE_SIZE
            if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 1357, __pyx_L1_error)
            #endif
            if (__pyx_t_7 >= __pyx_temp) break;
          }
          __pyx_t_6 = __Pyx_PyList_GetItemRef(__pyx_t_1, __pyx_t_7);
          ++__pyx_t_7;
        } else {
          {
            Py_ssize_t __pyx_temp = __Pyx_PyTuple_GET_SIZE(__pyx_t_1);
            #if !CYTHON_ASSUME_SAFE_SIZE
            if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 1357, __pyx_L1_error)
            #endif
            if (__pyx_t_7 >= __pyx_temp) break;
          }
          #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
          __pyx_t_6 = __Pyx_NewRef(PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_7));
          #else
          __pyx_t_6 = __Pyx_PySequence_ITEM(__pyx_t_1, __pyx_t_7);
          #endif
          ++__pyx_t_7;
        }
        if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1357, __pyx_L1_error)
      } else {
        __pyx_t_6 = __pyx_t_8(__pyx_t_1);
        if (unlikely(!__pyx_t_6)) {
          PyObject* exc_type = PyErr_Occurred();
          if (exc_type) {
            if (unlikely(!__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) __PYX_ERR(0, 1357, __pyx_L1_error)
            PyErr_Clear();
          }
          break;
        }
      }
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_XGOTREF(__pyx_cur_scope->__pyx_v_o);
      __Pyx_XDECREF_SET(__pyx_cur_scope->__pyx_v_o, __pyx_t_6);
      __Pyx_GIVEREF(__pyx_t_6);
      __pyx_t_6 = 0;

      /* "unicorn_binance_rest_api/manager.py":1358
 *             # yield data
 *             for o in output_data:
 *                 yield o             # <<<<<<<<<<<<<<
 * 
 *             # set our start timestamp using the last value in the array
*/
      __Pyx_INCREF(__pyx_cur_scope->__pyx_v_o);
      __pyx_r = __pyx_cur_scope->__pyx_v_o;
      __Pyx_XGIVEREF(__pyx_t_1);
      __pyx_cur_scope->__pyx_t_0 = __pyx_t_1;
      __pyx_cur_scope->__pyx_t_1 = __pyx_t_7;
      __pyx_cur_scope->__pyx_t_2 = __pyx_t_8;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      __Pyx_Coroutine_ResetAndClearException(__pyx_generator);
      /* return from generator, yielding value */
      __pyx_generator->resume_label = 1;
      return __pyx_r;
      __pyx_L12_resume_from_yield:;
      __pyx_t_1 = __pyx_cur_scope->__pyx_t_0;
      __pyx_cur_scope->__pyx_t_0 = 0;
      __Pyx_XGOTREF(__pyx_t_1);
      __pyx_t_7 = __pyx_cur_scope->__pyx_t_1;
      __pyx_t_8 = __pyx_cur_scope->__pyx_t_2;
      if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 1358, __pyx_L1_error)

      /* "unicorn_binance_rest_api/manager.py":1357
 * 
 *             # yield data
 *             for o in output_data:             # <<<<<<<<<<<<<<
 *                 yield o
 * 
*/
    }
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

    /* "unicorn_binance_rest_api/manager.py":1361
 * 
 *             # set our start timestamp using the last value in the array
 *             start_ts = output_data[-1][0]             # <<<<<<<<<<<<<<
 * 
 *             idx += 1
*/
    __pyx_t_1 = __Pyx_GetItemInt(__pyx_cur_scope->__pyx_v_output_data, -1L, long, 1, __Pyx_PyLong_From_long, 0, 1, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1361, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_t_6 = __Pyx_GetItemInt(__pyx_t_1, 0, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1361, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_6);
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __Pyx_GOTREF(__pyx_cur_scope->__pyx_v_start_ts);
    __Pyx_DECREF_SET(__pyx_cur_scope->__pyx_v_start_ts, __pyx_t_6);
    __Pyx_GIVEREF(__pyx_t_6);
    __pyx_t_6 = 0;

    /* "unicorn_binance_rest_api/manager.py":1363
 *             start_ts = output_data[-1][0]
 * 
 *             idx += 1             # <<<<<<<<<<<<<<
 *             # check if we received less than the required limit and exit the loop
 *             if len(output_data) < limit:
*/
    __pyx_t_6 = __Pyx_PyLong_AddObjC(__pyx_cur_scope->__pyx_v_idx, __pyx_mstate_global->__pyx_int_1, 1, 1, 0); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1363, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_6);
    __Pyx_GOTREF(__pyx_cur_scope->__pyx_v_idx);
    __Pyx_DECREF_SET(__pyx_cur_scope->__pyx_v_idx, __pyx_t_6);
    __Pyx_GIVEREF(__pyx_t_6);
    __pyx_t_6 = 0;

    /* "unicorn_binance_rest_api/manager.py":1365
 *             idx += 1
 *             # check if we received less than the required limit and exit the loop
 *             if len(output_data) < limit:             # <<<<<<<<<<<<<<
 *                 # exit the while loop
 *                 break
*/
    __pyx_t_7 = PyObject_Length(__pyx_cur_scope->__pyx_v_output_data); if (unlikely(__pyx_t_7 == ((Py_ssize_t)-1))) __PYX_ERR(0, 1365, __pyx_L1_error)
    __pyx_t_5 = (__pyx_t_7 < __pyx_cur_scope->__pyx_v_limit);
    if (__pyx_t_5) {

      /* "unicorn_binance_rest_api/manager.py":1367
 *             if len(output_data) < limit:
 *                 # exit the while loop
 *                 break             # <<<<<<<<<<<<<<
 * 
 *             # increment next call by our timeframe
*/
      goto __pyx_L8_break;

      /* "unicorn_binance_rest_api/manager.py":1365
 *             idx += 1
 *             # check if we received less than the required limit and exit the loop
 *             if len(output_data) < limit:             # <<<<<<<<<<<<<<
 *                 # exit the while loop
 *                 break
*/
    }

    /* "unicorn_binance_rest_api/manager.py":1370
 * 
 *             # increment next call by our timeframe
 *             start_ts += timeframe             # <<<<<<<<<<<<<<
 * 
 *             # sleep after every 3rd call to be kind to the API
*/
    __pyx_t_6 = PyNumber_InPlaceAdd(__pyx_cur_scope->__pyx_v_start_ts, __pyx_cur_scope->__pyx_v_timeframe); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1370, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_6);
    __Pyx_GOTREF(__pyx_cur_scope->__pyx_v_start_ts);
    __Pyx_DECREF_SET(__pyx_cur_scope->__pyx_v_start_ts, __pyx_t_6);
    __Pyx_GIVEREF(__pyx_t_6);
    __pyx_t_6 = 0;

    /* "unicorn_binance_rest_api/manager.py":1373
 * 
 *             # sleep after every 3rd call to be kind to the API
 *             if idx % 3 == 0:             # <<<<<<<<<<<<<<
 *                 time.sleep(1)
 * 
*/
    __pyx_t_6 = __Pyx_PyLong_RemainderObjC(__pyx_cur_scope->__pyx_v_idx, __pyx_mstate_global->__pyx_int_3, 3, 0, 0); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1373, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_6);
    __pyx_t_5 = (__Pyx_PyLong_BoolEqObjC(__pyx_t_6, __pyx_mstate_global->__pyx_int_0, 0, 0)); if (unlikely((__pyx_t_5 < 0))) __PYX_ERR(0, 1373, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    if (__pyx_t_5) {

      /* "unicorn_binance_rest_api/manager.py":1374
 *             # sleep after every 3rd call to be kind to the API
 *             if idx % 3 == 0:
 *                 time.sleep(1)             # <<<<<<<<<<<<<<
 * 
 *     def get_avg_price(self, **params):
*/
      __pyx_t_1 = NULL;
      __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_time); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1374, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_sleep); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1374, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_4 = 1;
      #if CYTHON_UNPACK_METHODS
      if (unlikely(PyMethod_Check(__pyx_t_2))) {
        __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_2);
        assert(__pyx_t_1);
        PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_2);
        __Pyx_INCREF(__pyx_t_1);
        __Pyx_INCREF(__pyx__function);
        __Pyx_DECREF_SET(__pyx_t_2, __pyx__function);
        __pyx_t_4 = 0;
      }
      #endif
      {
        PyObject *__pyx_callargs[2] = {__pyx_t_1, __pyx_mstate_global->__pyx_int_1};
        __pyx_t_6 = __Pyx_PyObject_FastCall(__pyx_t_2, __pyx_callargs+__pyx_t_4, (2-__pyx_t_4) | (__pyx_t_4*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
        __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1374, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_6);
      }
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;

      /* "unicorn_binance_rest_api/manager.py":1373
 * 
 *             # sleep after every 3rd call to be kind to the API
 *             if idx % 3 == 0:             # <<<<<<<<<<<<<<
 *                 time.sleep(1)
 * 
*/
    }
  }
  __pyx_L8_break:;
  CYTHON_MAYBE_UNUSED_VAR(__pyx_cur_scope);

  /* "unicorn_binance_rest_api/manager.py":1295
 *         return output_data
 * 
 *     def get_historical_klines_generator(self, symbol, interval, start_str, end_str=None):             # <<<<<<<<<<<<<<
 *         """
 *         Get Historical Klines from Binance
*/

  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_6);
  if (__Pyx_PyErr_Occurred()) {
    __Pyx_Generator_Replace_StopIteration(0);
    __Pyx_AddTraceback("get_historical_klines_generator", __pyx_clineno, __pyx_lineno, __pyx_filename);
  }
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  #if !CYTHON_USE_EXC_INFO_STACK
  __Pyx_Coroutine_ResetAndClearException(__pyx_generator);
  #endif
  __pyx_generator->resume_label = -1;
  __Pyx_Coroutine_clear((PyObject*)__pyx_generator);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":1376
 *                 time.sleep(1)
 * 
 *     def get_avg_price(self, **params):             # <<<<<<<<<<<<<<
 *         """Current average price for a symbol.
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_99get_avg_price(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_98get_avg_price, "Current average price for a symbol.\n\n        https://binance-docs.github.io/apidocs/spot/en/#current-average-price\n\n        :param symbol:\n        :type symbol: str\n\n        :returns: API response\n\n        .. code-block:: python\n\n            {\n                \"mins\": 5,\n                \"price\": \"9.35751834\"\n            }\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_99get_avg_price = {"get_avg_price", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_99get_avg_price, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_98get_avg_price};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_99get_avg_price(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_avg_price (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 1376, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 1376, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "get_avg_price", 1) < 0) __PYX_ERR(0, 1376, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_avg_price", 1, 1, 1, i); __PYX_ERR(0, 1376, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 1376, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_avg_price", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 1376, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_avg_price", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_98get_avg_price(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_98get_avg_price(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  size_t __pyx_t_4;
  PyObject *__pyx_t_5 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_avg_price", 0);

  /* "unicorn_binance_rest_api/manager.py":1393
 *             }
 *         """
 *         return self._get('avgPrice', data=params, version=self.PRIVATE_API_VERSION)             # <<<<<<<<<<<<<<
 * 
 *     def get_ticker(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_2 = __pyx_v_self;
  __Pyx_INCREF(__pyx_t_2);
  __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_PRIVATE_API_VERSION); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1393, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __pyx_t_4 = 0;
  {
    PyObject *__pyx_callargs[2 + ((CYTHON_VECTORCALL) ? 2 : 0)] = {__pyx_t_2, __pyx_mstate_global->__pyx_n_u_avgPrice};
    __pyx_t_5 = __Pyx_MakeVectorcallBuilderKwds(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1393, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_data, __pyx_v_params, __pyx_t_5, __pyx_callargs+2, 0) < 0) __PYX_ERR(0, 1393, __pyx_L1_error)
    if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_version_2, __pyx_t_3, __pyx_t_5, __pyx_callargs+2, 1) < 0) __PYX_ERR(0, 1393, __pyx_L1_error)
    __pyx_t_1 = __Pyx_Object_VectorcallMethod_CallFromBuilder(__pyx_mstate_global->__pyx_n_u_get_2, __pyx_callargs+__pyx_t_4, (2-__pyx_t_4) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET), __pyx_t_5);
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1393, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
  }
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":1376
 *                 time.sleep(1)
 * 
 *     def get_avg_price(self, **params):             # <<<<<<<<<<<<<<
 *         """Current average price for a symbol.
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_avg_price", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":1395
 *         return self._get('avgPrice', data=params, version=self.PRIVATE_API_VERSION)
 * 
 *     def get_ticker(self, **params):             # <<<<<<<<<<<<<<
 *         """24 hour price change statistics.
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_101get_ticker(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_100get_ticker, "24 hour price change statistics.\n\n        https://binance-docs.github.io/apidocs/spot/en/#24hr-ticker-price-change-statistics\n\n        :param symbol:\n        :type symbol: str\n\n        :returns: API response\n\n        .. code-block:: python\n\n            {\n                \"priceChange\": \"-94.99999800\",\n                \"priceChangePercent\": \"-95.960\",\n                \"weightedAvgPrice\": \"0.29628482\",\n                \"prevClosePrice\": \"0.10002000\",\n                \"lastPrice\": \"4.00000200\",\n                \"bidPrice\": \"4.00000000\",\n                \"askPrice\": \"4.00000200\",\n                \"openPrice\": \"99.00000000\",\n                \"highPrice\": \"100.00000000\",\n                \"lowPrice\": \"0.10000000\",\n                \"volume\": \"8913.30000000\",\n                \"openTime\": 1499783499040,\n                \"closeTime\": 1499869899040,\n                \"fristId\": 28385,   # First tradeId\n                \"lastId\": 28460,    # Last tradeId\n                \"count\": 76         # Trade count\n            }\n\n        OR\n\n        .. code-block:: python\n\n            [\n                {\n                    \"priceChange\": \"-94.99999800\",\n                    \"priceChangePercent\": \"-95.960\",\n                    \"weightedAvgPrice\": \"0.29628482\",\n                    \"prevClosePrice\": \"0.10002000\",\n                    \"lastPrice\": \"4.00000200\",\n                    \"bidPrice\": \"4.00000000\",\n                    \"askPrice\": \"4.00000200\",\n                    \"openPrice\": \"99.00000000\",\n                    \"highPrice\": \"100.00000000\",\n                    \"lowPrice\": \"0.10000000\",\n                    \"volume\": \"8913.30000000\",\n                    \"openTime\": 1499783499040,\n                    \"closeTime\": 1499869899040,\n                    \"fristId\": 28385,   # First tradeId\n                    \"lastId\": 28460,    # Last tradeId\n                 ""   \"count\": 76         # Trade count\n                }\n            ]\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_101get_ticker = {"get_ticker", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_101get_ticker, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_100get_ticker};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_101get_ticker(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_ticker (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 1395, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 1395, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "get_ticker", 1) < 0) __PYX_ERR(0, 1395, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_ticker", 1, 1, 1, i); __PYX_ERR(0, 1395, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 1395, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_ticker", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 1395, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_ticker", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_100get_ticker(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_100get_ticker(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  size_t __pyx_t_4;
  PyObject *__pyx_t_5 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_ticker", 0);

  /* "unicorn_binance_rest_api/manager.py":1454
 * 
 *         """
 *         return self._get('ticker/24hr', data=params, version=self.PRIVATE_API_VERSION)             # <<<<<<<<<<<<<<
 * 
 *     def get_symbol_ticker(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_2 = __pyx_v_self;
  __Pyx_INCREF(__pyx_t_2);
  __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_PRIVATE_API_VERSION); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1454, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __pyx_t_4 = 0;
  {
    PyObject *__pyx_callargs[2 + ((CYTHON_VECTORCALL) ? 2 : 0)] = {__pyx_t_2, __pyx_mstate_global->__pyx_kp_u_ticker_24hr};
    __pyx_t_5 = __Pyx_MakeVectorcallBuilderKwds(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1454, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_data, __pyx_v_params, __pyx_t_5, __pyx_callargs+2, 0) < 0) __PYX_ERR(0, 1454, __pyx_L1_error)
    if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_version_2, __pyx_t_3, __pyx_t_5, __pyx_callargs+2, 1) < 0) __PYX_ERR(0, 1454, __pyx_L1_error)
    __pyx_t_1 = __Pyx_Object_VectorcallMethod_CallFromBuilder(__pyx_mstate_global->__pyx_n_u_get_2, __pyx_callargs+__pyx_t_4, (2-__pyx_t_4) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET), __pyx_t_5);
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1454, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
  }
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":1395
 *         return self._get('avgPrice', data=params, version=self.PRIVATE_API_VERSION)
 * 
 *     def get_ticker(self, **params):             # <<<<<<<<<<<<<<
 *         """24 hour price change statistics.
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_ticker", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":1456
 *         return self._get('ticker/24hr', data=params, version=self.PRIVATE_API_VERSION)
 * 
 *     def get_symbol_ticker(self, **params):             # <<<<<<<<<<<<<<
 *         """Latest price for a symbol or symbols.
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_103get_symbol_ticker(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_102get_symbol_ticker, "Latest price for a symbol or symbols.\n\n        https://binance-docs.github.io/apidocs/spot/en/#24hr-ticker-price-change-statistics\n\n        :param symbol:\n        :type symbol: str\n\n        :returns: API response\n\n        .. code-block:: python\n\n            {\n                \"symbol\": \"LTCBTC\",\n                \"price\": \"4.00000200\"\n            }\n\n        OR\n\n        .. code-block:: python\n\n            [\n                {\n                    \"symbol\": \"LTCBTC\",\n                    \"price\": \"4.00000200\"\n                },\n                {\n                    \"symbol\": \"ETHBTC\",\n                    \"price\": \"0.07946600\"\n                }\n            ]\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_103get_symbol_ticker = {"get_symbol_ticker", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_103get_symbol_ticker, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_102get_symbol_ticker};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_103get_symbol_ticker(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_symbol_ticker (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 1456, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 1456, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "get_symbol_ticker", 1) < 0) __PYX_ERR(0, 1456, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_symbol_ticker", 1, 1, 1, i); __PYX_ERR(0, 1456, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 1456, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_symbol_ticker", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 1456, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_symbol_ticker", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_102get_symbol_ticker(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_102get_symbol_ticker(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  size_t __pyx_t_4;
  PyObject *__pyx_t_5 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_symbol_ticker", 0);

  /* "unicorn_binance_rest_api/manager.py":1491
 * 
 *         """
 *         return self._get('ticker/price', data=params, version=self.PRIVATE_API_VERSION)             # <<<<<<<<<<<<<<
 * 
 *     def get_orderbook_ticker(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_2 = __pyx_v_self;
  __Pyx_INCREF(__pyx_t_2);
  __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_PRIVATE_API_VERSION); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1491, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __pyx_t_4 = 0;
  {
    PyObject *__pyx_callargs[2 + ((CYTHON_VECTORCALL) ? 2 : 0)] = {__pyx_t_2, __pyx_mstate_global->__pyx_kp_u_ticker_price};
    __pyx_t_5 = __Pyx_MakeVectorcallBuilderKwds(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1491, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_data, __pyx_v_params, __pyx_t_5, __pyx_callargs+2, 0) < 0) __PYX_ERR(0, 1491, __pyx_L1_error)
    if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_version_2, __pyx_t_3, __pyx_t_5, __pyx_callargs+2, 1) < 0) __PYX_ERR(0, 1491, __pyx_L1_error)
    __pyx_t_1 = __Pyx_Object_VectorcallMethod_CallFromBuilder(__pyx_mstate_global->__pyx_n_u_get_2, __pyx_callargs+__pyx_t_4, (2-__pyx_t_4) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET), __pyx_t_5);
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1491, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
  }
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":1456
 *         return self._get('ticker/24hr', data=params, version=self.PRIVATE_API_VERSION)
 * 
 *     def get_symbol_ticker(self, **params):             # <<<<<<<<<<<<<<
 *         """Latest price for a symbol or symbols.
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_symbol_ticker", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":1493
 *         return self._get('ticker/price', data=params, version=self.PRIVATE_API_VERSION)
 * 
 *     def get_orderbook_ticker(self, **params):             # <<<<<<<<<<<<<<
 *         """Latest price for a symbol or symbols.
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_105get_orderbook_ticker(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_104get_orderbook_ticker, "Latest price for a symbol or symbols.\n\n        https://binance-docs.github.io/apidocs/spot/en/#symbol-order-book-ticker\n\n        :param symbol:\n        :type symbol: str\n\n        :returns: API response\n\n        .. code-block:: python\n\n            {\n                \"symbol\": \"LTCBTC\",\n                \"bidPrice\": \"4.00000000\",\n                \"bidQty\": \"431.00000000\",\n                \"askPrice\": \"4.00000200\",\n                \"askQty\": \"9.00000000\"\n            }\n\n        OR\n\n        .. code-block:: python\n\n            [\n                {\n                    \"symbol\": \"LTCBTC\",\n                    \"bidPrice\": \"4.00000000\",\n                    \"bidQty\": \"431.00000000\",\n                    \"askPrice\": \"4.00000200\",\n                    \"askQty\": \"9.00000000\"\n                },\n                {\n                    \"symbol\": \"ETHBTC\",\n                    \"bidPrice\": \"0.07946700\",\n                    \"bidQty\": \"9.00000000\",\n                    \"askPrice\": \"100000.00000000\",\n                    \"askQty\": \"1000.00000000\"\n                }\n            ]\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_105get_orderbook_ticker = {"get_orderbook_ticker", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_105get_orderbook_ticker, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_104get_orderbook_ticker};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_105get_orderbook_ticker(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_orderbook_ticker (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 1493, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 1493, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "get_orderbook_ticker", 1) < 0) __PYX_ERR(0, 1493, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_orderbook_ticker", 1, 1, 1, i); __PYX_ERR(0, 1493, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 1493, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_orderbook_ticker", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 1493, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_orderbook_ticker", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_104get_orderbook_ticker(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_104get_orderbook_ticker(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  size_t __pyx_t_4;
  PyObject *__pyx_t_5 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_orderbook_ticker", 0);

  /* "unicorn_binance_rest_api/manager.py":1537
 * 
 *         """
 *         return self._get('ticker/bookTicker', data=params, version=self.PRIVATE_API_VERSION)             # <<<<<<<<<<<<<<
 * 
 *     # Account Endpoints
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_2 = __pyx_v_self;
  __Pyx_INCREF(__pyx_t_2);
  __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_PRIVATE_API_VERSION); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1537, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __pyx_t_4 = 0;
  {
    PyObject *__pyx_callargs[2 + ((CYTHON_VECTORCALL) ? 2 : 0)] = {__pyx_t_2, __pyx_mstate_global->__pyx_kp_u_ticker_bookTicker};
    __pyx_t_5 = __Pyx_MakeVectorcallBuilderKwds(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1537, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_data, __pyx_v_params, __pyx_t_5, __pyx_callargs+2, 0) < 0) __PYX_ERR(0, 1537, __pyx_L1_error)
    if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_version_2, __pyx_t_3, __pyx_t_5, __pyx_callargs+2, 1) < 0) __PYX_ERR(0, 1537, __pyx_L1_error)
    __pyx_t_1 = __Pyx_Object_VectorcallMethod_CallFromBuilder(__pyx_mstate_global->__pyx_n_u_get_2, __pyx_callargs+__pyx_t_4, (2-__pyx_t_4) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET), __pyx_t_5);
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1537, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
  }
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":1493
 *         return self._get('ticker/price', data=params, version=self.PRIVATE_API_VERSION)
 * 
 *     def get_orderbook_ticker(self, **params):             # <<<<<<<<<<<<<<
 *         """Latest price for a symbol or symbols.
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_orderbook_ticker", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":1541
 *     # Account Endpoints
 * 
 *     def create_order(self, **params):             # <<<<<<<<<<<<<<
 *         """Send in a new order
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_107create_order(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_106create_order, "Send in a new order\n\n        Any order with an icebergQty MUST have timeInForce set to GTC.\n\n        https://binance-docs.github.io/apidocs/spot/en/#new-order--trade\n\n        :param symbol: required\n        :type symbol: str\n        :param side: required\n        :type side: str\n        :param type: required\n        :type type: str\n        :param timeInForce: required if limit order\n        :type timeInForce: str\n        :param quantity: required\n        :type quantity: decimal\n        :param quoteOrderQty: amount the user wants to spend (when buying) or receive (when selling)\n            of the quote asset, applicable to MARKET orders\n        :type quoteOrderQty: decimal\n        :param price: required\n        :type price: str\n        :param newClientOrderId: A unique id for the order. Automatically generated if not sent.\n        :type newClientOrderId: str\n        :param icebergQty: Used with LIMIT, STOP_LOSS_LIMIT, and TAKE_PROFIT_LIMIT to create an iceberg order.\n        :type icebergQty: decimal\n        :param newOrderRespType: Set the response JSON. ACK, RESULT, or FULL; default: RESULT.\n        :type newOrderRespType: str\n        :param recvWindow: the number of milliseconds the request is valid for\n        :type recvWindow: int\n\n        :returns: API response\n\n        Response ACK:\n\n        .. code-block:: python\n\n            {\n                \"symbol\":\"LTCBTC\",\n                \"orderId\": 1,\n                \"clientOrderId\": \"myOrder1\" # Will be newClientOrderId\n                \"transactTime\": 1499827319559\n            }\n\n        Response RESULT:\n\n        .. code-block:: python\n\n            {\n                \"symbol\": \"BTCUSDT\",\n                \"orderId\": 28,\n                \"clientOrderId\": \"6gCrw2kRUAF9CvJDGP16IP\",\n                \"transactTime\": 1507725176595,\n                \"price\": \"0.00000000\",\n                \"origQty\": \"10.00000000\",\n                \"executedQty\": ""\"10.00000000\",\n                \"status\": \"FILLED\",\n                \"timeInForce\": \"GTC\",\n                \"type\": \"MARKET\",\n                \"side\": \"SELL\"\n            }\n\n        Response FULL:\n\n        .. code-block:: python\n\n            {\n                \"symbol\": \"BTCUSDT\",\n                \"orderId\": 28,\n                \"clientOrderId\": \"6gCrw2kRUAF9CvJDGP16IP\",\n                \"transactTime\": 1507725176595,\n                \"price\": \"0.00000000\",\n                \"origQty\": \"10.00000000\",\n                \"executedQty\": \"10.00000000\",\n                \"status\": \"FILLED\",\n                \"timeInForce\": \"GTC\",\n                \"type\": \"MARKET\",\n                \"side\": \"SELL\",\n                \"fills\": [\n                    {\n                        \"price\": \"4000.00000000\",\n                        \"qty\": \"1.00000000\",\n                        \"commission\": \"4.00000000\",\n                        \"commissionAsset\": \"USDT\"\n                    },\n                    {\n                        \"price\": \"3999.00000000\",\n                        \"qty\": \"5.00000000\",\n                        \"commission\": \"19.99500000\",\n                        \"commissionAsset\": \"USDT\"\n                    },\n                    {\n                        \"price\": \"3998.00000000\",\n                        \"qty\": \"2.00000000\",\n                        \"commission\": \"7.99600000\",\n                        \"commissionAsset\": \"USDT\"\n                    },\n                    {\n                        \"price\": \"3997.00000000\",\n                        \"qty\": \"1.00000000\",\n                        \"commission\": \"3.99700000\",\n                        \"commissionAsset\": \"USDT\"\n                    },\n                    {\n                        \"price\": \"3995.00000000\",\n                        \"qty\": \"1.00000000\",\n                        ""\"commission\": \"3.99500000\",\n                        \"commissionAsset\": \"USDT\"\n                    }\n                ]\n            }\n\n        :raises: BinanceRequestException, BinanceAPIException, BinanceOrderException, BinanceOrderMinAmountException,\n                 BinanceOrderMinPriceException, BinanceOrderMinTotalException, BinanceOrderUnknownSymbolException,\n                 BinanceOrderInactiveSymbolException\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_107create_order = {"create_order", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_107create_order, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_106create_order};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_107create_order(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("create_order (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 1541, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 1541, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "create_order", 1) < 0) __PYX_ERR(0, 1541, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("create_order", 1, 1, 1, i); __PYX_ERR(0, 1541, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 1541, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("create_order", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 1541, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.create_order", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_106create_order(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_106create_order(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("create_order", 0);

  /* "unicorn_binance_rest_api/manager.py":1657
 *                  BinanceOrderInactiveSymbolException
 *         """
 *         return self._post('order', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def order_limit(self, timeInForce=TIME_IN_FORCE_GTC, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_post_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1657, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1657, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 1657, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[1], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1657, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":1541
 *     # Account Endpoints
 * 
 *     def create_order(self, **params):             # <<<<<<<<<<<<<<
 *         """Send in a new order
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.create_order", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":1659
 *         return self._post('order', True, data=params)
 * 
 *     def order_limit(self, timeInForce=TIME_IN_FORCE_GTC, **params):             # <<<<<<<<<<<<<<
 *         """Send in a new limit order
 * 
*/

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_16__defaults__(CYTHON_UNUSED PyObject *__pyx_self) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("__defaults__", 0);
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1659, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_INCREF(__Pyx_CyFunction_Defaults(struct __pyx_defaults, __pyx_self)->arg0);
  __Pyx_GIVEREF(__Pyx_CyFunction_Defaults(struct __pyx_defaults, __pyx_self)->arg0);
  if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, __Pyx_CyFunction_Defaults(struct __pyx_defaults, __pyx_self)->arg0) != (0)) __PYX_ERR(0, 1659, __pyx_L1_error);
  __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1659, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_GIVEREF(__pyx_t_1);
  if (__Pyx_PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_1) != (0)) __PYX_ERR(0, 1659, __pyx_L1_error);
  __Pyx_INCREF(Py_None);
  __Pyx_GIVEREF(Py_None);
  if (__Pyx_PyTuple_SET_ITEM(__pyx_t_2, 1, Py_None) != (0)) __PYX_ERR(0, 1659, __pyx_L1_error);
  __pyx_t_1 = 0;
  __pyx_r = __pyx_t_2;
  __pyx_t_2 = 0;
  goto __pyx_L0;

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.__defaults__", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_109order_limit(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_108order_limit, "Send in a new limit order\n\n        Any order with an icebergQty MUST have timeInForce set to GTC.\n\n        :param symbol: required\n        :type symbol: str\n        :param side: required\n        :type side: str\n        :param quantity: required\n        :type quantity: decimal\n        :param price: required\n        :type price: str\n        :param timeInForce: default Good till cancelled\n        :type timeInForce: str\n        :param newClientOrderId: A unique id for the order. Automatically generated if not sent.\n        :type newClientOrderId: str\n        :param icebergQty: Used with LIMIT, STOP_LOSS_LIMIT, and TAKE_PROFIT_LIMIT to create an iceberg order.\n        :type icebergQty: decimal\n        :param newOrderRespType: Set the response JSON. ACK, RESULT, or FULL; default: RESULT.\n        :type newOrderRespType: str\n        :param recvWindow: the number of milliseconds the request is valid for\n        :type recvWindow: int\n\n        :returns: API response\n\n        See order endpoint for full response options\n\n        :raises: BinanceRequestException, BinanceAPIException, BinanceOrderException, BinanceOrderMinAmountException,\n                 BinanceOrderMinPriceException, BinanceOrderMinTotalException, BinanceOrderUnknownSymbolException,\n                 BinanceOrderInactiveSymbolException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_109order_limit = {"order_limit", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_109order_limit, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_108order_limit};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_109order_limit(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_timeInForce = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[2] = {0,0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("order_limit (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,&__pyx_mstate_global->__pyx_n_u_timeInForce,0};
    struct __pyx_defaults *__pyx_dynamic_args = __Pyx_CyFunction_Defaults(struct __pyx_defaults, __pyx_self);
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 1659, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 1659, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 1659, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "order_limit", 1) < 0) __PYX_ERR(0, 1659, __pyx_L3_error)
      if (!values[1]) values[1] = __Pyx_NewRef(__pyx_dynamic_args->arg0);
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("order_limit", 0, 1, 2, i); __PYX_ERR(0, 1659, __pyx_L3_error) }
      }
    } else {
      switch (__pyx_nargs) {
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 1659, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 1659, __pyx_L3_error)
        break;
        default: goto __pyx_L5_argtuple_error;
      }
      if (!values[1]) values[1] = __Pyx_NewRef(__pyx_dynamic_args->arg0);
    }
    __pyx_v_self = values[0];
    __pyx_v_timeInForce = values[1];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("order_limit", 0, 1, 2, __pyx_nargs); __PYX_ERR(0, 1659, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.order_limit", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_108order_limit(__pyx_self, __pyx_v_self, __pyx_v_timeInForce, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_108order_limit(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_timeInForce, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("order_limit", 0);

  /* "unicorn_binance_rest_api/manager.py":1693
 *         """
 *         params.update({
 *             'type': self.ORDER_TYPE_LIMIT,             # <<<<<<<<<<<<<<
 *             'timeInForce': timeInForce
 *         })
*/
  __pyx_t_1 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1693, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_ORDER_TYPE_LIMIT); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1693, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_mstate_global->__pyx_n_u_type, __pyx_t_2) < 0) __PYX_ERR(0, 1693, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "unicorn_binance_rest_api/manager.py":1694
 *         params.update({
 *             'type': self.ORDER_TYPE_LIMIT,
 *             'timeInForce': timeInForce             # <<<<<<<<<<<<<<
 *         })
 *         return self.create_order(**params)
*/
  if (PyDict_SetItem(__pyx_t_1, __pyx_mstate_global->__pyx_n_u_timeInForce, __pyx_v_timeInForce) < 0) __PYX_ERR(0, 1693, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":1692
 * 
 *         """
 *         params.update({             # <<<<<<<<<<<<<<
 *             'type': self.ORDER_TYPE_LIMIT,
 *             'timeInForce': timeInForce
*/
  __pyx_t_2 = __Pyx_CallUnboundCMethod1(&__pyx_mstate_global->__pyx_umethod_PyDict_Type__update, __pyx_v_params, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1692, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "unicorn_binance_rest_api/manager.py":1696
 *             'timeInForce': timeInForce
 *         })
 *         return self.create_order(**params)             # <<<<<<<<<<<<<<
 * 
 *     def order_limit_buy(self, timeInForce=TIME_IN_FORCE_GTC, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_create_order); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1696, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __pyx_t_1 = PyDict_Copy(__pyx_v_params); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1696, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_mstate_global->__pyx_empty_tuple, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1696, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":1659
 *         return self._post('order', True, data=params)
 * 
 *     def order_limit(self, timeInForce=TIME_IN_FORCE_GTC, **params):             # <<<<<<<<<<<<<<
 *         """Send in a new limit order
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.order_limit", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":1698
 *         return self.create_order(**params)
 * 
 *     def order_limit_buy(self, timeInForce=TIME_IN_FORCE_GTC, **params):             # <<<<<<<<<<<<<<
 *         """Send in a new limit buy order
 * 
*/

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_18__defaults__(CYTHON_UNUSED PyObject *__pyx_self) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("__defaults__", 0);
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1698, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_INCREF(__Pyx_CyFunction_Defaults(struct __pyx_defaults, __pyx_self)->arg0);
  __Pyx_GIVEREF(__Pyx_CyFunction_Defaults(struct __pyx_defaults, __pyx_self)->arg0);
  if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, __Pyx_CyFunction_Defaults(struct __pyx_defaults, __pyx_self)->arg0) != (0)) __PYX_ERR(0, 1698, __pyx_L1_error);
  __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1698, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_GIVEREF(__pyx_t_1);
  if (__Pyx_PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_1) != (0)) __PYX_ERR(0, 1698, __pyx_L1_error);
  __Pyx_INCREF(Py_None);
  __Pyx_GIVEREF(Py_None);
  if (__Pyx_PyTuple_SET_ITEM(__pyx_t_2, 1, Py_None) != (0)) __PYX_ERR(0, 1698, __pyx_L1_error);
  __pyx_t_1 = 0;
  __pyx_r = __pyx_t_2;
  __pyx_t_2 = 0;
  goto __pyx_L0;

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.__defaults__", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_111order_limit_buy(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_110order_limit_buy, "Send in a new limit buy order\n\n        Any order with an icebergQty MUST have timeInForce set to GTC.\n\n        :param symbol: required\n        :type symbol: str\n        :param quantity: required\n        :type quantity: decimal\n        :param price: required\n        :type price: str\n        :param timeInForce: default Good till cancelled\n        :type timeInForce: str\n        :param newClientOrderId: A unique id for the order. Automatically generated if not sent.\n        :type newClientOrderId: str\n        :param stopPrice: Used with stop orders\n        :type stopPrice: decimal\n        :param icebergQty: Used with iceberg orders\n        :type icebergQty: decimal\n        :param newOrderRespType: Set the response JSON. ACK, RESULT, or FULL; default: RESULT.\n        :type newOrderRespType: str\n        :param recvWindow: the number of milliseconds the request is valid for\n        :type recvWindow: int\n\n        :returns: API response\n\n        See order endpoint for full response options\n\n        :raises: BinanceRequestException, BinanceAPIException, BinanceOrderException, BinanceOrderMinAmountException,\n                 BinanceOrderMinPriceException, BinanceOrderMinTotalException, BinanceOrderUnknownSymbolException,\n                 BinanceOrderInactiveSymbolException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_111order_limit_buy = {"order_limit_buy", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_111order_limit_buy, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_110order_limit_buy};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_111order_limit_buy(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_timeInForce = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[2] = {0,0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("order_limit_buy (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,&__pyx_mstate_global->__pyx_n_u_timeInForce,0};
    struct __pyx_defaults *__pyx_dynamic_args = __Pyx_CyFunction_Defaults(struct __pyx_defaults, __pyx_self);
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 1698, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 1698, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 1698, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "order_limit_buy", 1) < 0) __PYX_ERR(0, 1698, __pyx_L3_error)
      if (!values[1]) values[1] = __Pyx_NewRef(__pyx_dynamic_args->arg0);
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("order_limit_buy", 0, 1, 2, i); __PYX_ERR(0, 1698, __pyx_L3_error) }
      }
    } else {
      switch (__pyx_nargs) {
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 1698, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 1698, __pyx_L3_error)
        break;
        default: goto __pyx_L5_argtuple_error;
      }
      if (!values[1]) values[1] = __Pyx_NewRef(__pyx_dynamic_args->arg0);
    }
    __pyx_v_self = values[0];
    __pyx_v_timeInForce = values[1];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("order_limit_buy", 0, 1, 2, __pyx_nargs); __PYX_ERR(0, 1698, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.order_limit_buy", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_110order_limit_buy(__pyx_self, __pyx_v_self, __pyx_v_timeInForce, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_110order_limit_buy(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_timeInForce, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("order_limit_buy", 0);

  /* "unicorn_binance_rest_api/manager.py":1732
 *         """
 *         params.update({
 *             'side': self.SIDE_BUY,             # <<<<<<<<<<<<<<
 *         })
 *         return self.order_limit(timeInForce=timeInForce, **params)
*/
  __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1732, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_SIDE_BUY); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1732, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_mstate_global->__pyx_n_u_side, __pyx_t_2) < 0) __PYX_ERR(0, 1732, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "unicorn_binance_rest_api/manager.py":1731
 * 
 *         """
 *         params.update({             # <<<<<<<<<<<<<<
 *             'side': self.SIDE_BUY,
 *         })
*/
  __pyx_t_2 = __Pyx_CallUnboundCMethod1(&__pyx_mstate_global->__pyx_umethod_PyDict_Type__update, __pyx_v_params, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1731, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "unicorn_binance_rest_api/manager.py":1734
 *             'side': self.SIDE_BUY,
 *         })
 *         return self.order_limit(timeInForce=timeInForce, **params)             # <<<<<<<<<<<<<<
 * 
 *     def order_limit_sell(self, timeInForce=TIME_IN_FORCE_GTC, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_order_limit); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1734, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __pyx_t_3 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1734, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  if (PyDict_SetItem(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_timeInForce, __pyx_v_timeInForce) < 0) __PYX_ERR(0, 1734, __pyx_L1_error)
  __pyx_t_1 = __pyx_t_3;
  __pyx_t_3 = 0;
  if (__Pyx_MergeKeywords(__pyx_t_1, __pyx_v_params) < 0) __PYX_ERR(0, 1734, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_mstate_global->__pyx_empty_tuple, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1734, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":1698
 *         return self.create_order(**params)
 * 
 *     def order_limit_buy(self, timeInForce=TIME_IN_FORCE_GTC, **params):             # <<<<<<<<<<<<<<
 *         """Send in a new limit buy order
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.order_limit_buy", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":1736
 *         return self.order_limit(timeInForce=timeInForce, **params)
 * 
 *     def order_limit_sell(self, timeInForce=TIME_IN_FORCE_GTC, **params):             # <<<<<<<<<<<<<<
 *         """Send in a new limit sell order
 * 
*/

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_20__defaults__(CYTHON_UNUSED PyObject *__pyx_self) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("__defaults__", 0);
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1736, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_INCREF(__Pyx_CyFunction_Defaults(struct __pyx_defaults, __pyx_self)->arg0);
  __Pyx_GIVEREF(__Pyx_CyFunction_Defaults(struct __pyx_defaults, __pyx_self)->arg0);
  if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, __Pyx_CyFunction_Defaults(struct __pyx_defaults, __pyx_self)->arg0) != (0)) __PYX_ERR(0, 1736, __pyx_L1_error);
  __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1736, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_GIVEREF(__pyx_t_1);
  if (__Pyx_PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_1) != (0)) __PYX_ERR(0, 1736, __pyx_L1_error);
  __Pyx_INCREF(Py_None);
  __Pyx_GIVEREF(Py_None);
  if (__Pyx_PyTuple_SET_ITEM(__pyx_t_2, 1, Py_None) != (0)) __PYX_ERR(0, 1736, __pyx_L1_error);
  __pyx_t_1 = 0;
  __pyx_r = __pyx_t_2;
  __pyx_t_2 = 0;
  goto __pyx_L0;

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.__defaults__", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_113order_limit_sell(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_112order_limit_sell, "Send in a new limit sell order\n\n        :param symbol: required\n        :type symbol: str\n        :param quantity: required\n        :type quantity: decimal\n        :param price: required\n        :type price: str\n        :param timeInForce: default Good till cancelled\n        :type timeInForce: str\n        :param newClientOrderId: A unique id for the order. Automatically generated if not sent.\n        :type newClientOrderId: str\n        :param stopPrice: Used with stop orders\n        :type stopPrice: decimal\n        :param icebergQty: Used with iceberg orders\n        :type icebergQty: decimal\n        :param newOrderRespType: Set the response JSON. ACK, RESULT, or FULL; default: RESULT.\n        :type newOrderRespType: str\n        :param recvWindow: the number of milliseconds the request is valid for\n        :type recvWindow: int\n\n        :returns: API response\n\n        See order endpoint for full response options\n\n        :raises: BinanceRequestException, BinanceAPIException, BinanceOrderException, BinanceOrderMinAmountException,\n                 BinanceOrderMinPriceException, BinanceOrderMinTotalException, BinanceOrderUnknownSymbolException,\n                 BinanceOrderInactiveSymbolException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_113order_limit_sell = {"order_limit_sell", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_113order_limit_sell, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_112order_limit_sell};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_113order_limit_sell(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_timeInForce = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[2] = {0,0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("order_limit_sell (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,&__pyx_mstate_global->__pyx_n_u_timeInForce,0};
    struct __pyx_defaults *__pyx_dynamic_args = __Pyx_CyFunction_Defaults(struct __pyx_defaults, __pyx_self);
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 1736, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 1736, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 1736, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "order_limit_sell", 1) < 0) __PYX_ERR(0, 1736, __pyx_L3_error)
      if (!values[1]) values[1] = __Pyx_NewRef(__pyx_dynamic_args->arg0);
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("order_limit_sell", 0, 1, 2, i); __PYX_ERR(0, 1736, __pyx_L3_error) }
      }
    } else {
      switch (__pyx_nargs) {
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 1736, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 1736, __pyx_L3_error)
        break;
        default: goto __pyx_L5_argtuple_error;
      }
      if (!values[1]) values[1] = __Pyx_NewRef(__pyx_dynamic_args->arg0);
    }
    __pyx_v_self = values[0];
    __pyx_v_timeInForce = values[1];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("order_limit_sell", 0, 1, 2, __pyx_nargs); __PYX_ERR(0, 1736, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.order_limit_sell", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_112order_limit_sell(__pyx_self, __pyx_v_self, __pyx_v_timeInForce, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_112order_limit_sell(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_timeInForce, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("order_limit_sell", 0);

  /* "unicorn_binance_rest_api/manager.py":1768
 *         """
 *         params.update({
 *             'side': self.SIDE_SELL             # <<<<<<<<<<<<<<
 *         })
 *         return self.order_limit(timeInForce=timeInForce, **params)
*/
  __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1768, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_SIDE_SELL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1768, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_mstate_global->__pyx_n_u_side, __pyx_t_2) < 0) __PYX_ERR(0, 1768, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "unicorn_binance_rest_api/manager.py":1767
 * 
 *         """
 *         params.update({             # <<<<<<<<<<<<<<
 *             'side': self.SIDE_SELL
 *         })
*/
  __pyx_t_2 = __Pyx_CallUnboundCMethod1(&__pyx_mstate_global->__pyx_umethod_PyDict_Type__update, __pyx_v_params, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1767, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "unicorn_binance_rest_api/manager.py":1770
 *             'side': self.SIDE_SELL
 *         })
 *         return self.order_limit(timeInForce=timeInForce, **params)             # <<<<<<<<<<<<<<
 * 
 *     def order_market(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_order_limit); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1770, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __pyx_t_3 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1770, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  if (PyDict_SetItem(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_timeInForce, __pyx_v_timeInForce) < 0) __PYX_ERR(0, 1770, __pyx_L1_error)
  __pyx_t_1 = __pyx_t_3;
  __pyx_t_3 = 0;
  if (__Pyx_MergeKeywords(__pyx_t_1, __pyx_v_params) < 0) __PYX_ERR(0, 1770, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_mstate_global->__pyx_empty_tuple, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1770, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":1736
 *         return self.order_limit(timeInForce=timeInForce, **params)
 * 
 *     def order_limit_sell(self, timeInForce=TIME_IN_FORCE_GTC, **params):             # <<<<<<<<<<<<<<
 *         """Send in a new limit sell order
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.order_limit_sell", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":1772
 *         return self.order_limit(timeInForce=timeInForce, **params)
 * 
 *     def order_market(self, **params):             # <<<<<<<<<<<<<<
 *         """Send in a new market order
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_115order_market(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_114order_market, "Send in a new market order\n\n        :param symbol: required\n        :type symbol: str\n        :param side: required\n        :type side: str\n        :param quantity: required\n        :type quantity: decimal\n        :param quoteOrderQty: amount the user wants to spend (when buying) or receive (when selling)\n            of the quote asset\n        :type quoteOrderQty: decimal\n        :param newClientOrderId: A unique id for the order. Automatically generated if not sent.\n        :type newClientOrderId: str\n        :param newOrderRespType: Set the response JSON. ACK, RESULT, or FULL; default: RESULT.\n        :type newOrderRespType: str\n        :param recvWindow: the number of milliseconds the request is valid for\n        :type recvWindow: int\n\n        :returns: API response\n\n        See order endpoint for full response options\n\n        :raises: BinanceRequestException, BinanceAPIException, BinanceOrderException, BinanceOrderMinAmountException,\n                 BinanceOrderMinPriceException, BinanceOrderMinTotalException, BinanceOrderUnknownSymbolException,\n                 BinanceOrderInactiveSymbolException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_115order_market = {"order_market", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_115order_market, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_114order_market};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_115order_market(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("order_market (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 1772, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 1772, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "order_market", 1) < 0) __PYX_ERR(0, 1772, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("order_market", 1, 1, 1, i); __PYX_ERR(0, 1772, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 1772, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("order_market", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 1772, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.order_market", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_114order_market(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_114order_market(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("order_market", 0);

  /* "unicorn_binance_rest_api/manager.py":1801
 *         """
 *         params.update({
 *             'type': self.ORDER_TYPE_MARKET             # <<<<<<<<<<<<<<
 *         })
 *         return self.create_order(**params)
*/
  __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1801, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_ORDER_TYPE_MARKET); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1801, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_mstate_global->__pyx_n_u_type, __pyx_t_2) < 0) __PYX_ERR(0, 1801, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "unicorn_binance_rest_api/manager.py":1800
 * 
 *         """
 *         params.update({             # <<<<<<<<<<<<<<
 *             'type': self.ORDER_TYPE_MARKET
 *         })
*/
  __pyx_t_2 = __Pyx_CallUnboundCMethod1(&__pyx_mstate_global->__pyx_umethod_PyDict_Type__update, __pyx_v_params, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1800, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "unicorn_binance_rest_api/manager.py":1803
 *             'type': self.ORDER_TYPE_MARKET
 *         })
 *         return self.create_order(**params)             # <<<<<<<<<<<<<<
 * 
 *     def order_market_buy(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_create_order); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1803, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __pyx_t_1 = PyDict_Copy(__pyx_v_params); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1803, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_mstate_global->__pyx_empty_tuple, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1803, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":1772
 *         return self.order_limit(timeInForce=timeInForce, **params)
 * 
 *     def order_market(self, **params):             # <<<<<<<<<<<<<<
 *         """Send in a new market order
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.order_market", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":1805
 *         return self.create_order(**params)
 * 
 *     def order_market_buy(self, **params):             # <<<<<<<<<<<<<<
 *         """Send in a new market buy order
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_117order_market_buy(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_116order_market_buy, "Send in a new market buy order\n\n        :param symbol: required\n        :type symbol: str\n        :param quantity: required\n        :type quantity: decimal\n        :param quoteOrderQty: the amount the user wants to spend of the quote asset\n        :type quoteOrderQty: decimal\n        :param newClientOrderId: A unique id for the order. Automatically generated if not sent.\n        :type newClientOrderId: str\n        :param newOrderRespType: Set the response JSON. ACK, RESULT, or FULL; default: RESULT.\n        :type newOrderRespType: str\n        :param recvWindow: the number of milliseconds the request is valid for\n        :type recvWindow: int\n\n        :returns: API response\n\n        See order endpoint for full response options\n\n        :raises: BinanceRequestException, BinanceAPIException, BinanceOrderException, BinanceOrderMinAmountException,\n                 BinanceOrderMinPriceException, BinanceOrderMinTotalException, BinanceOrderUnknownSymbolException,\n                 BinanceOrderInactiveSymbolException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_117order_market_buy = {"order_market_buy", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_117order_market_buy, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_116order_market_buy};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_117order_market_buy(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("order_market_buy (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 1805, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 1805, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "order_market_buy", 1) < 0) __PYX_ERR(0, 1805, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("order_market_buy", 1, 1, 1, i); __PYX_ERR(0, 1805, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 1805, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("order_market_buy", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 1805, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.order_market_buy", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_116order_market_buy(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_116order_market_buy(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("order_market_buy", 0);

  /* "unicorn_binance_rest_api/manager.py":1831
 *         """
 *         params.update({
 *             'side': self.SIDE_BUY             # <<<<<<<<<<<<<<
 *         })
 *         return self.order_market(**params)
*/
  __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1831, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_SIDE_BUY); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1831, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_mstate_global->__pyx_n_u_side, __pyx_t_2) < 0) __PYX_ERR(0, 1831, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "unicorn_binance_rest_api/manager.py":1830
 * 
 *         """
 *         params.update({             # <<<<<<<<<<<<<<
 *             'side': self.SIDE_BUY
 *         })
*/
  __pyx_t_2 = __Pyx_CallUnboundCMethod1(&__pyx_mstate_global->__pyx_umethod_PyDict_Type__update, __pyx_v_params, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1830, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "unicorn_binance_rest_api/manager.py":1833
 *             'side': self.SIDE_BUY
 *         })
 *         return self.order_market(**params)             # <<<<<<<<<<<<<<
 * 
 *     def order_market_sell(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_order_market); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1833, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __pyx_t_1 = PyDict_Copy(__pyx_v_params); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1833, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_mstate_global->__pyx_empty_tuple, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1833, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":1805
 *         return self.create_order(**params)
 * 
 *     def order_market_buy(self, **params):             # <<<<<<<<<<<<<<
 *         """Send in a new market buy order
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.order_market_buy", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":1835
 *         return self.order_market(**params)
 * 
 *     def order_market_sell(self, **params):             # <<<<<<<<<<<<<<
 *         """Send in a new market sell order
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_119order_market_sell(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_118order_market_sell, "Send in a new market sell order\n\n        :param symbol: required\n        :type symbol: str\n        :param quantity: required\n        :type quantity: decimal\n        :param quoteOrderQty: the amount the user wants to receive of the quote asset\n        :type quoteOrderQty: decimal\n        :param newClientOrderId: A unique id for the order. Automatically generated if not sent.\n        :type newClientOrderId: str\n        :param newOrderRespType: Set the response JSON. ACK, RESULT, or FULL; default: RESULT.\n        :type newOrderRespType: str\n        :param recvWindow: the number of milliseconds the request is valid for\n        :type recvWindow: int\n\n        :returns: API response\n\n        See order endpoint for full response options\n\n        :raises: BinanceRequestException, BinanceAPIException, BinanceOrderException, BinanceOrderMinAmountException,\n                 BinanceOrderMinPriceException, BinanceOrderMinTotalException, BinanceOrderUnknownSymbolException,\n                 BinanceOrderInactiveSymbolException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_119order_market_sell = {"order_market_sell", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_119order_market_sell, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_118order_market_sell};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_119order_market_sell(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("order_market_sell (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 1835, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 1835, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "order_market_sell", 1) < 0) __PYX_ERR(0, 1835, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("order_market_sell", 1, 1, 1, i); __PYX_ERR(0, 1835, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 1835, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("order_market_sell", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 1835, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.order_market_sell", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_118order_market_sell(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_118order_market_sell(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("order_market_sell", 0);

  /* "unicorn_binance_rest_api/manager.py":1861
 *         """
 *         params.update({
 *             'side': self.SIDE_SELL             # <<<<<<<<<<<<<<
 *         })
 *         return self.order_market(**params)
*/
  __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1861, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_SIDE_SELL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1861, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_mstate_global->__pyx_n_u_side, __pyx_t_2) < 0) __PYX_ERR(0, 1861, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "unicorn_binance_rest_api/manager.py":1860
 * 
 *         """
 *         params.update({             # <<<<<<<<<<<<<<
 *             'side': self.SIDE_SELL
 *         })
*/
  __pyx_t_2 = __Pyx_CallUnboundCMethod1(&__pyx_mstate_global->__pyx_umethod_PyDict_Type__update, __pyx_v_params, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1860, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "unicorn_binance_rest_api/manager.py":1863
 *             'side': self.SIDE_SELL
 *         })
 *         return self.order_market(**params)             # <<<<<<<<<<<<<<
 * 
 *     def create_oco_order(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_order_market); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1863, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __pyx_t_1 = PyDict_Copy(__pyx_v_params); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1863, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_mstate_global->__pyx_empty_tuple, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1863, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":1835
 *         return self.order_market(**params)
 * 
 *     def order_market_sell(self, **params):             # <<<<<<<<<<<<<<
 *         """Send in a new market sell order
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.order_market_sell", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":1865
 *         return self.order_market(**params)
 * 
 *     def create_oco_order(self, **params):             # <<<<<<<<<<<<<<
 *         """Send in a new OCO order
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_121create_oco_order(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_120create_oco_order, "Send in a new OCO order\n\n        https://binance-docs.github.io/apidocs/spot/en/#new-oco-trade\n\n        :param symbol: required\n        :type symbol: str\n        :param listClientOrderId: A unique id for the list order. Automatically generated if not sent.\n        :type listClientOrderId: str\n        :param side: required\n        :type side: str\n        :param quantity: required\n        :type quantity: decimal\n        :param limitClientOrderId: A unique id for the limit order. Automatically generated if not sent.\n        :type limitClientOrderId: str\n        :param price: required\n        :type price: str\n        :param limitIcebergQty: Used to make the LIMIT_MAKER leg an iceberg order.\n        :type limitIcebergQty: decimal\n        :param stopClientOrderId: A unique id for the stop order. Automatically generated if not sent.\n        :type stopClientOrderId: str\n        :param stopPrice: required\n        :type stopPrice: str\n        :param stopLimitPrice: If provided, stopLimitTimeInForce is required.\n        :type stopLimitPrice: str\n        :param stopIcebergQty: Used with STOP_LOSS_LIMIT leg to make an iceberg order.\n        :type stopIcebergQty: decimal\n        :param stopLimitTimeInForce: Valid values are GTC/FOK/IOC.\n        :type stopLimitTimeInForce: str\n        :param newOrderRespType: Set the response JSON. ACK, RESULT, or FULL; default: RESULT.\n        :type newOrderRespType: str\n        :param recvWindow: the number of milliseconds the request is valid for\n        :type recvWindow: int\n\n        :returns: API response\n\n        Response ACK:\n\n        .. code-block:: python\n\n            {\n            }\n\n        Response RESULT:\n\n        .. code-block:: python\n\n            {\n            }\n\n        Response FULL:\n\n        .. code-block:: python\n\n            {\n            }\n\n        :raises: BinanceRequestException, BinanceAPIException, BinanceOrderException, BinanceOrderMinAmountException,\n             ""    BinanceOrderMinPriceException, BinanceOrderMinTotalException, BinanceOrderUnknownSymbolException,\n                 BinanceOrderInactiveSymbolException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_121create_oco_order = {"create_oco_order", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_121create_oco_order, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_120create_oco_order};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_121create_oco_order(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("create_oco_order (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 1865, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 1865, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "create_oco_order", 1) < 0) __PYX_ERR(0, 1865, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("create_oco_order", 1, 1, 1, i); __PYX_ERR(0, 1865, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 1865, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("create_oco_order", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 1865, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.create_oco_order", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_120create_oco_order(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_120create_oco_order(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("create_oco_order", 0);

  /* "unicorn_binance_rest_api/manager.py":1927
 * 
 *         """
 *         return self._post('order/oco', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def order_oco_buy(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_post_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1927, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1927, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 1927, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[2], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1927, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":1865
 *         return self.order_market(**params)
 * 
 *     def create_oco_order(self, **params):             # <<<<<<<<<<<<<<
 *         """Send in a new OCO order
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.create_oco_order", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":1929
 *         return self._post('order/oco', True, data=params)
 * 
 *     def order_oco_buy(self, **params):             # <<<<<<<<<<<<<<
 *         """Send in a new OCO buy order
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_123order_oco_buy(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_122order_oco_buy, "Send in a new OCO buy order\n\n        :param symbol: required\n        :type symbol: str\n        :param listClientOrderId: A unique id for the list order. Automatically generated if not sent.\n        :type listClientOrderId: str\n        :param quantity: required\n        :type quantity: decimal\n        :param limitClientOrderId: A unique id for the limit order. Automatically generated if not sent.\n        :type limitClientOrderId: str\n        :param price: required\n        :type price: str\n        :param limitIcebergQty: Used to make the LIMIT_MAKER leg an iceberg order.\n        :type limitIcebergQty: decimal\n        :param stopClientOrderId: A unique id for the stop order. Automatically generated if not sent.\n        :type stopClientOrderId: str\n        :param stopPrice: required\n        :type stopPrice: str\n        :param stopLimitPrice: If provided, stopLimitTimeInForce is required.\n        :type stopLimitPrice: str\n        :param stopIcebergQty: Used with STOP_LOSS_LIMIT leg to make an iceberg order.\n        :type stopIcebergQty: decimal\n        :param stopLimitTimeInForce: Valid values are GTC/FOK/IOC.\n        :type stopLimitTimeInForce: str\n        :param newOrderRespType: Set the response JSON. ACK, RESULT, or FULL; default: RESULT.\n        :type newOrderRespType: str\n        :param recvWindow: the number of milliseconds the request is valid for\n        :type recvWindow: int\n\n        :returns: API response\n\n        See OCO order endpoint for full response options\n\n        :raises: BinanceRequestException, BinanceAPIException, BinanceOrderException, BinanceOrderMinAmountException,\n                 BinanceOrderMinPriceException, BinanceOrderMinTotalException, BinanceOrderUnknownSymbolException,\n                 BinanceOrderInactiveSymbolException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_123order_oco_buy = {"order_oco_buy", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_123order_oco_buy, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_122order_oco_buy};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_123order_oco_buy(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("order_oco_buy (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 1929, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 1929, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "order_oco_buy", 1) < 0) __PYX_ERR(0, 1929, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("order_oco_buy", 1, 1, 1, i); __PYX_ERR(0, 1929, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 1929, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("order_oco_buy", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 1929, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.order_oco_buy", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_122order_oco_buy(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_122order_oco_buy(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("order_oco_buy", 0);

  /* "unicorn_binance_rest_api/manager.py":1969
 *         """
 *         params.update({
 *             'side': self.SIDE_BUY             # <<<<<<<<<<<<<<
 *         })
 *         return self.create_oco_order(**params)
*/
  __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1969, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_SIDE_BUY); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1969, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_mstate_global->__pyx_n_u_side, __pyx_t_2) < 0) __PYX_ERR(0, 1969, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "unicorn_binance_rest_api/manager.py":1968
 * 
 *         """
 *         params.update({             # <<<<<<<<<<<<<<
 *             'side': self.SIDE_BUY
 *         })
*/
  __pyx_t_2 = __Pyx_CallUnboundCMethod1(&__pyx_mstate_global->__pyx_umethod_PyDict_Type__update, __pyx_v_params, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1968, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "unicorn_binance_rest_api/manager.py":1971
 *             'side': self.SIDE_BUY
 *         })
 *         return self.create_oco_order(**params)             # <<<<<<<<<<<<<<
 * 
 *     def order_oco_sell(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_create_oco_order); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1971, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __pyx_t_1 = PyDict_Copy(__pyx_v_params); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1971, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_mstate_global->__pyx_empty_tuple, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1971, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":1929
 *         return self._post('order/oco', True, data=params)
 * 
 *     def order_oco_buy(self, **params):             # <<<<<<<<<<<<<<
 *         """Send in a new OCO buy order
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.order_oco_buy", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":1973
 *         return self.create_oco_order(**params)
 * 
 *     def order_oco_sell(self, **params):             # <<<<<<<<<<<<<<
 *         """Send in a new OCO sell order
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_125order_oco_sell(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_124order_oco_sell, "Send in a new OCO sell order\n\n        :param symbol: required\n        :type symbol: str\n        :param listClientOrderId: A unique id for the list order. Automatically generated if not sent.\n        :type listClientOrderId: str\n        :param quantity: required\n        :type quantity: decimal\n        :param limitClientOrderId: A unique id for the limit order. Automatically generated if not sent.\n        :type limitClientOrderId: str\n        :param price: required\n        :type price: str\n        :param limitIcebergQty: Used to make the LIMIT_MAKER leg an iceberg order.\n        :type limitIcebergQty: decimal\n        :param stopClientOrderId: A unique id for the stop order. Automatically generated if not sent.\n        :type stopClientOrderId: str\n        :param stopPrice: required\n        :type stopPrice: str\n        :param stopLimitPrice: If provided, stopLimitTimeInForce is required.\n        :type stopLimitPrice: str\n        :param stopIcebergQty: Used with STOP_LOSS_LIMIT leg to make an iceberg order.\n        :type stopIcebergQty: decimal\n        :param stopLimitTimeInForce: Valid values are GTC/FOK/IOC.\n        :type stopLimitTimeInForce: str\n        :param newOrderRespType: Set the response JSON. ACK, RESULT, or FULL; default: RESULT.\n        :type newOrderRespType: str\n        :param recvWindow: the number of milliseconds the request is valid for\n        :type recvWindow: int\n\n        :returns: API response\n\n        See OCO order endpoint for full response options\n\n        :raises: BinanceRequestException, BinanceAPIException, BinanceOrderException, BinanceOrderMinAmountException,\n                 BinanceOrderMinPriceException, BinanceOrderMinTotalException, BinanceOrderUnknownSymbolException,\n                 BinanceOrderInactiveSymbolException\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_125order_oco_sell = {"order_oco_sell", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_125order_oco_sell, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_124order_oco_sell};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_125order_oco_sell(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("order_oco_sell (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 1973, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 1973, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "order_oco_sell", 1) < 0) __PYX_ERR(0, 1973, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("order_oco_sell", 1, 1, 1, i); __PYX_ERR(0, 1973, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 1973, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("order_oco_sell", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 1973, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.order_oco_sell", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_124order_oco_sell(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_124order_oco_sell(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("order_oco_sell", 0);

  /* "unicorn_binance_rest_api/manager.py":2012
 *         """
 *         params.update({
 *             'side': self.SIDE_SELL             # <<<<<<<<<<<<<<
 *         })
 *         return self.create_oco_order(**params)
*/
  __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2012, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_SIDE_SELL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2012, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_mstate_global->__pyx_n_u_side, __pyx_t_2) < 0) __PYX_ERR(0, 2012, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "unicorn_binance_rest_api/manager.py":2011
 *                  BinanceOrderInactiveSymbolException
 *         """
 *         params.update({             # <<<<<<<<<<<<<<
 *             'side': self.SIDE_SELL
 *         })
*/
  __pyx_t_2 = __Pyx_CallUnboundCMethod1(&__pyx_mstate_global->__pyx_umethod_PyDict_Type__update, __pyx_v_params, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2011, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "unicorn_binance_rest_api/manager.py":2014
 *             'side': self.SIDE_SELL
 *         })
 *         return self.create_oco_order(**params)             # <<<<<<<<<<<<<<
 * 
 *     def create_test_order(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_create_oco_order); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2014, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __pyx_t_1 = PyDict_Copy(__pyx_v_params); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2014, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_mstate_global->__pyx_empty_tuple, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2014, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":1973
 *         return self.create_oco_order(**params)
 * 
 *     def order_oco_sell(self, **params):             # <<<<<<<<<<<<<<
 *         """Send in a new OCO sell order
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.order_oco_sell", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":2016
 *         return self.create_oco_order(**params)
 * 
 *     def create_test_order(self, **params):             # <<<<<<<<<<<<<<
 *         """Test new order creation and signature/recvWindow long. Creates and validates a new order but does not send
 *         it into the matching engine.
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_127create_test_order(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_126create_test_order, "Test new order creation and signature/recvWindow long. Creates and validates a new order but does not send\n        it into the matching engine.\n\n        https://binance-docs.github.io/apidocs/spot/en/#test-new-order-trade\n\n        :param symbol: required\n        :type symbol: str\n        :param side: required\n        :type side: str\n        :param type: required\n        :type type: str\n        :param timeInForce: required if limit order\n        :type timeInForce: str\n        :param quantity: required\n        :type quantity: decimal\n        :param price: required\n        :type price: str\n        :param newClientOrderId: A unique id for the order. Automatically generated if not sent.\n        :type newClientOrderId: str\n        :param icebergQty: Used with iceberg orders\n        :type icebergQty: decimal\n        :param newOrderRespType: Set the response JSON. ACK, RESULT, or FULL; default: RESULT.\n        :type newOrderRespType: str\n        :param recvWindow: The number of milliseconds the request is valid for\n        :type recvWindow: int\n\n        :returns: API response\n\n        .. code-block:: python\n\n            {}\n\n        :raises: BinanceRequestException, BinanceAPIException, BinanceOrderException, BinanceOrderMinAmountException,\n                 BinanceOrderMinPriceException, BinanceOrderMinTotalException, BinanceOrderUnknownSymbolException,\n                 BinanceOrderInactiveSymbolException\n\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_127create_test_order = {"create_test_order", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_127create_test_order, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_126create_test_order};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_127create_test_order(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("create_test_order (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 2016, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 2016, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "create_test_order", 1) < 0) __PYX_ERR(0, 2016, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("create_test_order", 1, 1, 1, i); __PYX_ERR(0, 2016, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 2016, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("create_test_order", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 2016, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.create_test_order", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_126create_test_order(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_126create_test_order(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("create_test_order", 0);

  /* "unicorn_binance_rest_api/manager.py":2055
 * 
 *         """
 *         return self._post('order/test', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_order(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_post_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2055, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2055, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 2055, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[3], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2055, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":2016
 *         return self.create_oco_order(**params)
 * 
 *     def create_test_order(self, **params):             # <<<<<<<<<<<<<<
 *         """Test new order creation and signature/recvWindow long. Creates and validates a new order but does not send
 *         it into the matching engine.
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.create_test_order", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":2057
 *         return self._post('order/test', True, data=params)
 * 
 *     def get_order(self, **params):             # <<<<<<<<<<<<<<
 *         """Check an order's status. Either orderId or origClientOrderId must be sent.
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_129get_order(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_128get_order, "Check an order's status. Either orderId or origClientOrderId must be sent.\n\n        https://binance-docs.github.io/apidocs/spot/en/#query-order-user_data\n\n        :param symbol: required\n        :type symbol: str\n        :param orderId: The unique order id\n        :type orderId: int\n        :param origClientOrderId: optional\n        :type origClientOrderId: str\n        :param recvWindow: the number of milliseconds the request is valid for\n        :type recvWindow: int\n\n        :returns: API response\n\n        .. code-block:: python\n\n            {\n                \"symbol\": \"LTCBTC\",\n                \"orderId\": 1,\n                \"clientOrderId\": \"myOrder1\",\n                \"price\": \"0.1\",\n                \"origQty\": \"1.0\",\n                \"executedQty\": \"0.0\",\n                \"status\": \"NEW\",\n                \"timeInForce\": \"GTC\",\n                \"type\": \"LIMIT\",\n                \"side\": \"BUY\",\n                \"stopPrice\": \"0.0\",\n                \"icebergQty\": \"0.0\",\n                \"time\": 1499827319559\n            }\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_129get_order = {"get_order", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_129get_order, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_128get_order};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_129get_order(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_order (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 2057, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 2057, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "get_order", 1) < 0) __PYX_ERR(0, 2057, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_order", 1, 1, 1, i); __PYX_ERR(0, 2057, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 2057, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_order", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 2057, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_order", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_128get_order(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_128get_order(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_order", 0);

  /* "unicorn_binance_rest_api/manager.py":2094
 * 
 *         """
 *         return self._get('order', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_all_orders(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_get_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2094, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2094, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 2094, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[1], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2094, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":2057
 *         return self._post('order/test', True, data=params)
 * 
 *     def get_order(self, **params):             # <<<<<<<<<<<<<<
 *         """Check an order's status. Either orderId or origClientOrderId must be sent.
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_order", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":2096
 *         return self._get('order', True, data=params)
 * 
 *     def get_all_orders(self, **params):             # <<<<<<<<<<<<<<
 *         """Get all account orders; active, canceled, or filled.
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_131get_all_orders(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_130get_all_orders, "Get all account orders; active, canceled, or filled.\n\n        https://binance-docs.github.io/apidocs/spot/en/#all-orders-user_data\n\n        :param symbol: required\n        :type symbol: str\n        :param orderId: The unique order id\n        :type orderId: int\n        :param limit: Default 500; max 500.\n        :type limit: int\n        :param recvWindow: the number of milliseconds the request is valid for\n        :type recvWindow: int\n\n        :returns: API response\n\n        .. code-block:: python\n\n            [\n                {\n                    \"symbol\": \"LTCBTC\",\n                    \"orderId\": 1,\n                    \"clientOrderId\": \"myOrder1\",\n                    \"price\": \"0.1\",\n                    \"origQty\": \"1.0\",\n                    \"executedQty\": \"0.0\",\n                    \"status\": \"NEW\",\n                    \"timeInForce\": \"GTC\",\n                    \"type\": \"LIMIT\",\n                    \"side\": \"BUY\",\n                    \"stopPrice\": \"0.0\",\n                    \"icebergQty\": \"0.0\",\n                    \"time\": 1499827319559\n                }\n            ]\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_131get_all_orders = {"get_all_orders", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_131get_all_orders, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_130get_all_orders};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_131get_all_orders(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_all_orders (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 2096, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 2096, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "get_all_orders", 1) < 0) __PYX_ERR(0, 2096, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_all_orders", 1, 1, 1, i); __PYX_ERR(0, 2096, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 2096, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_all_orders", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 2096, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_all_orders", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_130get_all_orders(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_130get_all_orders(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_all_orders", 0);

  /* "unicorn_binance_rest_api/manager.py":2135
 * 
 *         """
 *         return self._get('allOrders', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def cancel_all_open_orders(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_get_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2135, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2135, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 2135, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[4], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2135, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":2096
 *         return self._get('order', True, data=params)
 * 
 *     def get_all_orders(self, **params):             # <<<<<<<<<<<<<<
 *         """Get all account orders; active, canceled, or filled.
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_all_orders", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":2137
 *         return self._get('allOrders', True, data=params)
 * 
 *     def cancel_all_open_orders(self, **params):             # <<<<<<<<<<<<<<
 *         """Cancel all open orders of a symbol.
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_133cancel_all_open_orders(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_132cancel_all_open_orders, "Cancel all open orders of a symbol.\n\n        https://binance-docs.github.io/apidocs/spot/en/#margin-account-cancel-order-trade\n\n        :param symbol: required\n        :type symbol: str\n        :param recvWindow: the number of milliseconds the request is valid for\n        :type recvWindow: int\n\n        :returns: API response\n\n        .. code-block:: python\n\n            [\n              {\n                \"symbol\": \"BTCUSDT\",\n                \"isIsolated\": true,       // if isolated margin\n                \"origClientOrderId\": \"E6APeyTJvkMvLMYMqu1KQ4\",\n                \"orderId\": 11,\n                \"orderListId\": -1,\n                \"clientOrderId\": \"pXLV6Hz6mprAcVYpVMTGgx\",\n                \"price\": \"0.089853\",\n                \"origQty\": \"0.178622\",\n                \"executedQty\": \"0.000000\",\n                \"cummulativeQuoteQty\": \"0.000000\",\n                \"status\": \"CANCELED\",\n                \"timeInForce\": \"GTC\",\n                \"type\": \"LIMIT\",\n                \"side\": \"BUY\"\n              },\n              {\n                \"symbol\": \"BTCUSDT\",\n                \"isIsolated\": false,       // if isolated margin\n                \"origClientOrderId\": \"A3EF2HCwxgZPFMrfwbgrhv\",\n                \"orderId\": 13,\n                \"orderListId\": -1,\n                \"clientOrderId\": \"pXLV6Hz6mprAcVYpVMTGgx\",\n                \"price\": \"0.090430\",\n                \"origQty\": \"0.178622\",\n                \"executedQty\": \"0.000000\",\n                \"cummulativeQuoteQty\": \"0.000000\",\n                \"status\": \"CANCELED\",\n                \"timeInForce\": \"GTC\",\n                \"type\": \"LIMIT\",\n                \"side\": \"BUY\"\n              },\n              {\n                \"orderListId\": 1929,\n                \"contingencyType\": \"OCO\",\n                \"listStatusType\": \"ALL_DONE\",\n                \"listOrderStatus\": \"ALL_DONE\",\n          ""      \"listClientOrderId\": \"2inzWQdDvZLHbbAmAozX2N\",\n                \"transactionTime\": 1585230948299,\n                \"symbol\": \"BTCUSDT\",\n                \"isIsolated\": true,       // if isolated margin\n                \"orders\": [\n                  {\n                    \"symbol\": \"BTCUSDT\",\n                    \"orderId\": 20,\n                    \"clientOrderId\": \"CwOOIPHSmYywx6jZX77TdL\"\n                  },\n                  {\n                    \"symbol\": \"BTCUSDT\",\n                    \"orderId\": 21,\n                    \"clientOrderId\": \"461cPg51vQjV3zIMOXNz39\"\n                  }\n                ],\n                \"orderReports\": [\n                  {\n                    \"symbol\": \"BTCUSDT\",\n                    \"origClientOrderId\": \"CwOOIPHSmYywx6jZX77TdL\",\n                    \"orderId\": 20,\n                    \"orderListId\": 1929,\n                    \"clientOrderId\": \"pXLV6Hz6mprAcVYpVMTGgx\",\n                    \"price\": \"0.668611\",\n                    \"origQty\": \"0.690354\",\n                    \"executedQty\": \"0.000000\",\n                    \"cummulativeQuoteQty\": \"0.000000\",\n                    \"status\": \"CANCELED\",\n                    \"timeInForce\": \"GTC\",\n                    \"type\": \"STOP_LOSS_LIMIT\",\n                    \"side\": \"BUY\",\n                    \"stopPrice\": \"0.378131\",\n                    \"icebergQty\": \"0.017083\"\n                  },\n                  {\n                    \"symbol\": \"BTCUSDT\",\n                    \"origClientOrderId\": \"461cPg51vQjV3zIMOXNz39\",\n                    \"orderId\": 21,\n                    \"orderListId\": 1929,\n                    \"clientOrderId\": \"pXLV6Hz6mprAcVYpVMTGgx\",\n                    \"price\": \"0.008791\",\n                    \"origQty\": \"0.690354\",\n                    \"executedQty\": \"0.000000\",\n                    \"cummulativeQuoteQty\": \"0.000000\",\n       ""             \"status\": \"CANCELED\",\n                    \"timeInForce\": \"GTC\",\n                    \"type\": \"LIMIT_MAKER\",\n                    \"side\": \"BUY\",\n                    \"icebergQty\": \"0.639962\"\n                  }\n                ]\n              }\n            ]\n\n\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_133cancel_all_open_orders = {"cancel_all_open_orders", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_133cancel_all_open_orders, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_132cancel_all_open_orders};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_133cancel_all_open_orders(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("cancel_all_open_orders (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 2137, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 2137, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "cancel_all_open_orders", 1) < 0) __PYX_ERR(0, 2137, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("cancel_all_open_orders", 1, 1, 1, i); __PYX_ERR(0, 2137, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 2137, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("cancel_all_open_orders", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 2137, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.cancel_all_open_orders", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_132cancel_all_open_orders(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_132cancel_all_open_orders(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("cancel_all_open_orders", 0);

  /* "unicorn_binance_rest_api/manager.py":2248
 * 
 *         """
 *         return self._delete('openOrders', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def cancel_all_open_margin_orders(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_delete_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2248, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2248, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 2248, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[5], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2248, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":2137
 *         return self._get('allOrders', True, data=params)
 * 
 *     def cancel_all_open_orders(self, **params):             # <<<<<<<<<<<<<<
 *         """Cancel all open orders of a symbol.
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.cancel_all_open_orders", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":2250
 *         return self._delete('openOrders', True, data=params)
 * 
 *     def cancel_all_open_margin_orders(self, **params):             # <<<<<<<<<<<<<<
 *         """Cancel all open margin orders of a symbol.
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_135cancel_all_open_margin_orders(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_134cancel_all_open_margin_orders, "Cancel all open margin orders of a symbol.\n\n        https://binance-docs.github.io/apidocs/spot/en/#margin-account-cancel-all-open-orders-on-a-symbol-trade\n\n        :param symbol: required\n        :type symbol: str\n        :param recvWindow: the number of milliseconds the request is valid for\n        :type recvWindow: int\n\n        :returns: API response\n\n        .. code-block:: python\n\n            [\n              {\n                \"symbol\": \"BTCUSDT\",\n                \"origClientOrderId\": \"E6APeyTJvkMvLMYMqu1KQ4\",\n                \"orderId\": 11,\n                \"orderListId\": -1,\n                \"clientOrderId\": \"pXLV6Hz6mprAcVYpVMTGgx\",\n                \"price\": \"0.089853\",\n                \"origQty\": \"0.178622\",\n                \"executedQty\": \"0.000000\",\n                \"cummulativeQuoteQty\": \"0.000000\",\n                \"status\": \"CANCELED\",\n                \"timeInForce\": \"GTC\",\n                \"type\": \"LIMIT\",\n                \"side\": \"BUY\"\n              },\n              {\n                \"symbol\": \"BTCUSDT\",\n                \"origClientOrderId\": \"A3EF2HCwxgZPFMrfwbgrhv\",\n                \"orderId\": 13,\n                \"orderListId\": -1,\n                \"clientOrderId\": \"pXLV6Hz6mprAcVYpVMTGgx\",\n                \"price\": \"0.090430\",\n                \"origQty\": \"0.178622\",\n                \"executedQty\": \"0.000000\",\n                \"cummulativeQuoteQty\": \"0.000000\",\n                \"status\": \"CANCELED\",\n                \"timeInForce\": \"GTC\",\n                \"type\": \"LIMIT\",\n                \"side\": \"BUY\"\n              },\n              {\n                \"orderListId\": 1929,\n                \"contingencyType\": \"OCO\",\n                \"listStatusType\": \"ALL_DONE\",\n                \"listOrderStatus\": \"ALL_DONE\",\n                \"listClientOrderId\": \"2inzWQdDvZLHbbAmAozX2N\",\n                \"transactionTime\": 15852309482""99,\n                \"symbol\": \"BTCUSDT\",\n                \"orders\": [\n                  {\n                    \"symbol\": \"BTCUSDT\",\n                    \"orderId\": 20,\n                    \"clientOrderId\": \"CwOOIPHSmYywx6jZX77TdL\"\n                  },\n                  {\n                    \"symbol\": \"BTCUSDT\",\n                    \"orderId\": 21,\n                    \"clientOrderId\": \"461cPg51vQjV3zIMOXNz39\"\n                  }\n                ],\n                \"orderReports\": [\n                  {\n                    \"symbol\": \"BTCUSDT\",\n                    \"origClientOrderId\": \"CwOOIPHSmYywx6jZX77TdL\",\n                    \"orderId\": 20,\n                    \"orderListId\": 1929,\n                    \"clientOrderId\": \"pXLV6Hz6mprAcVYpVMTGgx\",\n                    \"price\": \"0.668611\",\n                    \"origQty\": \"0.690354\",\n                    \"executedQty\": \"0.000000\",\n                    \"cummulativeQuoteQty\": \"0.000000\",\n                    \"status\": \"CANCELED\",\n                    \"timeInForce\": \"GTC\",\n                    \"type\": \"STOP_LOSS_LIMIT\",\n                    \"side\": \"BUY\",\n                    \"stopPrice\": \"0.378131\",\n                    \"icebergQty\": \"0.017083\"\n                  },\n                  {\n                    \"symbol\": \"BTCUSDT\",\n                    \"origClientOrderId\": \"461cPg51vQjV3zIMOXNz39\",\n                    \"orderId\": 21,\n                    \"orderListId\": 1929,\n                    \"clientOrderId\": \"pXLV6Hz6mprAcVYpVMTGgx\",\n                    \"price\": \"0.008791\",\n                    \"origQty\": \"0.690354\",\n                    \"executedQty\": \"0.000000\",\n                    \"cummulativeQuoteQty\": \"0.000000\",\n                    \"status\": \"CANCELED\",\n                    \"timeInForce\": \"GTC\",\n                    \"type\": \"LIMIT_MAKER\",\n                    \"side\": \"BUY""\",\n                    \"icebergQty\": \"0.639962\"\n                  }\n                ]\n              }\n            ]\n\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_135cancel_all_open_margin_orders = {"cancel_all_open_margin_orders", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_135cancel_all_open_margin_orders, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_134cancel_all_open_margin_orders};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_135cancel_all_open_margin_orders(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("cancel_all_open_margin_orders (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 2250, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 2250, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "cancel_all_open_margin_orders", 1) < 0) __PYX_ERR(0, 2250, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("cancel_all_open_margin_orders", 1, 1, 1, i); __PYX_ERR(0, 2250, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 2250, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("cancel_all_open_margin_orders", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 2250, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.cancel_all_open_margin_orders", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_134cancel_all_open_margin_orders(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_134cancel_all_open_margin_orders(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("cancel_all_open_margin_orders", 0);

  /* "unicorn_binance_rest_api/manager.py":2357
 * 
 *         """
 *         return self._request_margin_api('delete', 'margin/openOrders', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def cancel_order(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2357, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2357, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_signed, Py_True) < 0) __PYX_ERR(0, 2357, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 2357, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[6], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2357, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":2250
 *         return self._delete('openOrders', True, data=params)
 * 
 *     def cancel_all_open_margin_orders(self, **params):             # <<<<<<<<<<<<<<
 *         """Cancel all open margin orders of a symbol.
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.cancel_all_open_margin_orders", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":2359
 *         return self._request_margin_api('delete', 'margin/openOrders', signed=True, data=params)
 * 
 *     def cancel_order(self, **params):             # <<<<<<<<<<<<<<
 *         """Cancel an active order. Either orderId or origClientOrderId must be sent.
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_137cancel_order(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_136cancel_order, "Cancel an active order. Either orderId or origClientOrderId must be sent.\n\n        https://binance-docs.github.io/apidocs/spot/en/#cancel-order-trade\n\n        :param symbol: required\n        :type symbol: str\n        :param orderId: The unique order id\n        :type orderId: int\n        :param origClientOrderId: optional\n        :type origClientOrderId: str\n        :param newClientOrderId: Used to uniquely identify this cancel. Automatically generated by default.\n        :type newClientOrderId: str\n        :param recvWindow: the number of milliseconds the request is valid for\n        :type recvWindow: int\n\n        :returns: API response\n\n        .. code-block:: python\n\n            {\n                \"symbol\": \"LTCBTC\",\n                \"origClientOrderId\": \"myOrder1\",\n                \"orderId\": 1,\n                \"clientOrderId\": \"cancelMyOrder1\"\n            }\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_137cancel_order = {"cancel_order", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_137cancel_order, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_136cancel_order};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_137cancel_order(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("cancel_order (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 2359, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 2359, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "cancel_order", 1) < 0) __PYX_ERR(0, 2359, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("cancel_order", 1, 1, 1, i); __PYX_ERR(0, 2359, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 2359, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("cancel_order", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 2359, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.cancel_order", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_136cancel_order(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_136cancel_order(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("cancel_order", 0);

  /* "unicorn_binance_rest_api/manager.py":2389
 * 
 *         """
 *         return self._delete('order', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_open_orders(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_delete_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2389, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2389, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 2389, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[1], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2389, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":2359
 *         return self._request_margin_api('delete', 'margin/openOrders', signed=True, data=params)
 * 
 *     def cancel_order(self, **params):             # <<<<<<<<<<<<<<
 *         """Cancel an active order. Either orderId or origClientOrderId must be sent.
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.cancel_order", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":2391
 *         return self._delete('order', True, data=params)
 * 
 *     def get_open_orders(self, **params):             # <<<<<<<<<<<<<<
 *         """Get all open orders on a symbol.
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_139get_open_orders(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_138get_open_orders, "Get all open orders on a symbol.\n\n        https://binance-docs.github.io/apidocs/spot/en/#current-open-orders-user_data\n\n        :param symbol: optional\n        :type symbol: str\n        :param recvWindow: the number of milliseconds the request is valid for\n        :type recvWindow: int\n\n        :returns: API response\n\n        .. code-block:: python\n\n            [\n                {\n                    \"symbol\": \"LTCBTC\",\n                    \"orderId\": 1,\n                    \"clientOrderId\": \"myOrder1\",\n                    \"price\": \"0.1\",\n                    \"origQty\": \"1.0\",\n                    \"executedQty\": \"0.0\",\n                    \"status\": \"NEW\",\n                    \"timeInForce\": \"GTC\",\n                    \"type\": \"LIMIT\",\n                    \"side\": \"BUY\",\n                    \"stopPrice\": \"0.0\",\n                    \"icebergQty\": \"0.0\",\n                    \"time\": 1499827319559\n                }\n            ]\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_139get_open_orders = {"get_open_orders", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_139get_open_orders, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_138get_open_orders};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_139get_open_orders(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_open_orders (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 2391, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 2391, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "get_open_orders", 1) < 0) __PYX_ERR(0, 2391, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_open_orders", 1, 1, 1, i); __PYX_ERR(0, 2391, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 2391, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_open_orders", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 2391, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_open_orders", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_138get_open_orders(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_138get_open_orders(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_open_orders", 0);

  /* "unicorn_binance_rest_api/manager.py":2426
 * 
 *         """
 *         return self._get('openOrders', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     # User Stream Endpoints
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_get_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2426, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2426, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 2426, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[5], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2426, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":2391
 *         return self._delete('order', True, data=params)
 * 
 *     def get_open_orders(self, **params):             # <<<<<<<<<<<<<<
 *         """Get all open orders on a symbol.
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_open_orders", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":2429
 * 
 *     # User Stream Endpoints
 *     def get_account(self, **params):             # <<<<<<<<<<<<<<
 *         """Get current account information.
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_141get_account(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_140get_account, "Get current account information.\n\n        https://binance-docs.github.io/apidocs/spot/en/#account-information-user_data\n\n        :param recvWindow: the number of milliseconds the request is valid for\n        :type recvWindow: int\n\n        :returns: API response\n\n        .. code-block:: python\n\n            {\n                \"makerCommission\": 15,\n                \"takerCommission\": 15,\n                \"buyerCommission\": 0,\n                \"sellerCommission\": 0,\n                \"canTrade\": true,\n                \"canWithdraw\": true,\n                \"canDeposit\": true,\n                \"balances\": [\n                    {\n                        \"asset\": \"BTC\",\n                        \"free\": \"4723846.89208129\",\n                        \"locked\": \"0.00000000\"\n                    },\n                    {\n                        \"asset\": \"LTC\",\n                        \"free\": \"4763368.68006011\",\n                        \"locked\": \"0.00000000\"\n                    }\n                ]\n            }\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_141get_account = {"get_account", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_141get_account, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_140get_account};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_141get_account(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_account (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 2429, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 2429, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "get_account", 1) < 0) __PYX_ERR(0, 2429, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_account", 1, 1, 1, i); __PYX_ERR(0, 2429, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 2429, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_account", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 2429, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_account", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_140get_account(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_140get_account(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_account", 0);

  /* "unicorn_binance_rest_api/manager.py":2466
 * 
 *         """
 *         return self._get('account', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_asset_balance(self, asset, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_get_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2466, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2466, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 2466, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[7], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2466, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":2429
 * 
 *     # User Stream Endpoints
 *     def get_account(self, **params):             # <<<<<<<<<<<<<<
 *         """Get current account information.
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_account", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":2468
 *         return self._get('account', True, data=params)
 * 
 *     def get_asset_balance(self, asset, **params):             # <<<<<<<<<<<<<<
 *         """Get current asset balance.
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_143get_asset_balance(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_142get_asset_balance, "Get current asset balance.\n\n        https://binance-docs.github.io/apidocs/spot/en/#account-information-user_data\n\n        :param asset: required\n        :type asset: str\n        :param recvWindow: the number of milliseconds the request is valid for\n        :type recvWindow: int\n\n        :returns: dictionary or None if not found\n\n        .. code-block:: python\n\n            {\n                \"asset\": \"BTC\",\n                \"free\": \"4723846.89208129\",\n                \"locked\": \"0.00000000\"\n            }\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_143get_asset_balance = {"get_asset_balance", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_143get_asset_balance, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_142get_asset_balance};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_143get_asset_balance(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_asset = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[2] = {0,0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_asset_balance (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,&__pyx_mstate_global->__pyx_n_u_asset,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 2468, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 2468, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 2468, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "get_asset_balance", 1) < 0) __PYX_ERR(0, 2468, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 2; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_asset_balance", 1, 2, 2, i); __PYX_ERR(0, 2468, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 2)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 2468, __pyx_L3_error)
      values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 2468, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
    __pyx_v_asset = values[1];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_asset_balance", 1, 2, 2, __pyx_nargs); __PYX_ERR(0, 2468, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_asset_balance", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_142get_asset_balance(__pyx_self, __pyx_v_self, __pyx_v_asset, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_142get_asset_balance(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_asset, PyObject *__pyx_v_params) {
  PyObject *__pyx_v_res = NULL;
  PyObject *__pyx_v_bal = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_t_4;
  Py_ssize_t __pyx_t_5;
  PyObject *(*__pyx_t_6)(PyObject *);
  PyObject *__pyx_t_7 = NULL;
  size_t __pyx_t_8;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_asset_balance", 0);

  /* "unicorn_binance_rest_api/manager.py":2491
 * 
 *         """
 *         res = self.get_account(**params)             # <<<<<<<<<<<<<<
 *         # find asset balance in list of balances
 *         if "balances" in res:
*/
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_get_account); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2491, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = PyDict_Copy(__pyx_v_params); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2491, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_empty_tuple, __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2491, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_v_res = __pyx_t_3;
  __pyx_t_3 = 0;

  /* "unicorn_binance_rest_api/manager.py":2493
 *         res = self.get_account(**params)
 *         # find asset balance in list of balances
 *         if "balances" in res:             # <<<<<<<<<<<<<<
 *             for bal in res['balances']:
 *                 if bal['asset'].lower() == asset.lower():
*/
  __pyx_t_4 = (__Pyx_PySequence_ContainsTF(__pyx_mstate_global->__pyx_n_u_balances, __pyx_v_res, Py_EQ)); if (unlikely((__pyx_t_4 < 0))) __PYX_ERR(0, 2493, __pyx_L1_error)
  if (__pyx_t_4) {

    /* "unicorn_binance_rest_api/manager.py":2494
 *         # find asset balance in list of balances
 *         if "balances" in res:
 *             for bal in res['balances']:             # <<<<<<<<<<<<<<
 *                 if bal['asset'].lower() == asset.lower():
 *                     return bal
*/
    __pyx_t_3 = __Pyx_PyObject_Dict_GetItem(__pyx_v_res, __pyx_mstate_global->__pyx_n_u_balances); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2494, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    if (likely(PyList_CheckExact(__pyx_t_3)) || PyTuple_CheckExact(__pyx_t_3)) {
      __pyx_t_2 = __pyx_t_3; __Pyx_INCREF(__pyx_t_2);
      __pyx_t_5 = 0;
      __pyx_t_6 = NULL;
    } else {
      __pyx_t_5 = -1; __pyx_t_2 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2494, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_6 = (CYTHON_COMPILING_IN_LIMITED_API) ? PyIter_Next : __Pyx_PyObject_GetIterNextFunc(__pyx_t_2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2494, __pyx_L1_error)
    }
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    for (;;) {
      if (likely(!__pyx_t_6)) {
        if (likely(PyList_CheckExact(__pyx_t_2))) {
          {
            Py_ssize_t __pyx_temp = __Pyx_PyList_GET_SIZE(__pyx_t_2);
            #if !CYTHON_ASSUME_SAFE_SIZE
            if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 2494, __pyx_L1_error)
            #endif
            if (__pyx_t_5 >= __pyx_temp) break;
          }
          __pyx_t_3 = __Pyx_PyList_GetItemRef(__pyx_t_2, __pyx_t_5);
          ++__pyx_t_5;
        } else {
          {
            Py_ssize_t __pyx_temp = __Pyx_PyTuple_GET_SIZE(__pyx_t_2);
            #if !CYTHON_ASSUME_SAFE_SIZE
            if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 2494, __pyx_L1_error)
            #endif
            if (__pyx_t_5 >= __pyx_temp) break;
          }
          #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
          __pyx_t_3 = __Pyx_NewRef(PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_5));
          #else
          __pyx_t_3 = __Pyx_PySequence_ITEM(__pyx_t_2, __pyx_t_5);
          #endif
          ++__pyx_t_5;
        }
        if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2494, __pyx_L1_error)
      } else {
        __pyx_t_3 = __pyx_t_6(__pyx_t_2);
        if (unlikely(!__pyx_t_3)) {
          PyObject* exc_type = PyErr_Occurred();
          if (exc_type) {
            if (unlikely(!__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) __PYX_ERR(0, 2494, __pyx_L1_error)
            PyErr_Clear();
          }
          break;
        }
      }
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_XDECREF_SET(__pyx_v_bal, __pyx_t_3);
      __pyx_t_3 = 0;

      /* "unicorn_binance_rest_api/manager.py":2495
 *         if "balances" in res:
 *             for bal in res['balances']:
 *                 if bal['asset'].lower() == asset.lower():             # <<<<<<<<<<<<<<
 *                     return bal
 *         return None
*/
      __pyx_t_7 = __Pyx_PyObject_Dict_GetItem(__pyx_v_bal, __pyx_mstate_global->__pyx_n_u_asset); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2495, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_7);
      __pyx_t_1 = __pyx_t_7;
      __Pyx_INCREF(__pyx_t_1);
      __pyx_t_8 = 0;
      {
        PyObject *__pyx_callargs[2] = {__pyx_t_1, NULL};
        __pyx_t_3 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_lower, __pyx_callargs+__pyx_t_8, (1-__pyx_t_8) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
        __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2495, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_3);
      }
      __pyx_t_1 = __pyx_v_asset;
      __Pyx_INCREF(__pyx_t_1);
      __pyx_t_8 = 0;
      {
        PyObject *__pyx_callargs[2] = {__pyx_t_1, NULL};
        __pyx_t_7 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_lower, __pyx_callargs+__pyx_t_8, (1-__pyx_t_8) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
        __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
        if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2495, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_7);
      }
      __pyx_t_1 = PyObject_RichCompare(__pyx_t_3, __pyx_t_7, Py_EQ); __Pyx_XGOTREF(__pyx_t_1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2495, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely((__pyx_t_4 < 0))) __PYX_ERR(0, 2495, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      if (__pyx_t_4) {

        /* "unicorn_binance_rest_api/manager.py":2496
 *             for bal in res['balances']:
 *                 if bal['asset'].lower() == asset.lower():
 *                     return bal             # <<<<<<<<<<<<<<
 *         return None
 * 
*/
        __Pyx_XDECREF(__pyx_r);
        __Pyx_INCREF(__pyx_v_bal);
        __pyx_r = __pyx_v_bal;
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        goto __pyx_L0;

        /* "unicorn_binance_rest_api/manager.py":2495
 *         if "balances" in res:
 *             for bal in res['balances']:
 *                 if bal['asset'].lower() == asset.lower():             # <<<<<<<<<<<<<<
 *                     return bal
 *         return None
*/
      }

      /* "unicorn_binance_rest_api/manager.py":2494
 *         # find asset balance in list of balances
 *         if "balances" in res:
 *             for bal in res['balances']:             # <<<<<<<<<<<<<<
 *                 if bal['asset'].lower() == asset.lower():
 *                     return bal
*/
    }
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

    /* "unicorn_binance_rest_api/manager.py":2493
 *         res = self.get_account(**params)
 *         # find asset balance in list of balances
 *         if "balances" in res:             # <<<<<<<<<<<<<<
 *             for bal in res['balances']:
 *                 if bal['asset'].lower() == asset.lower():
*/
  }

  /* "unicorn_binance_rest_api/manager.py":2497
 *                 if bal['asset'].lower() == asset.lower():
 *                     return bal
 *         return None             # <<<<<<<<<<<<<<
 * 
 *     def get_my_trades(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":2468
 *         return self._get('account', True, data=params)
 * 
 *     def get_asset_balance(self, asset, **params):             # <<<<<<<<<<<<<<
 *         """Get current asset balance.
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_asset_balance", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_res);
  __Pyx_XDECREF(__pyx_v_bal);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":2499
 *         return None
 * 
 *     def get_my_trades(self, **params):             # <<<<<<<<<<<<<<
 *         """Get trades for a specific symbol.
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_145get_my_trades(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_144get_my_trades, "Get trades for a specific symbol.\n\n        https://binance-docs.github.io/apidocs/spot/en/#account-trade-list-user_data\n\n        :param symbol: required\n        :type symbol: str\n        :param limit: Default 500; max 500.\n        :type limit: int\n        :param fromId: TradeId to fetch from. Default gets most recent trades.\n        :type fromId: int\n        :param recvWindow: the number of milliseconds the request is valid for\n        :type recvWindow: int\n\n        :returns: API response\n\n        .. code-block:: python\n\n            [\n                {\n                    \"id\": 28457,\n                    \"price\": \"4.00000100\",\n                    \"qty\": \"12.00000000\",\n                    \"commission\": \"10.10000000\",\n                    \"commissionAsset\": \"BNB\",\n                    \"time\": 1499865549590,\n                    \"isBuyer\": true,\n                    \"isMaker\": false,\n                    \"isBestMatch\": true\n                }\n            ]\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_145get_my_trades = {"get_my_trades", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_145get_my_trades, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_144get_my_trades};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_145get_my_trades(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_my_trades (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 2499, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 2499, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "get_my_trades", 1) < 0) __PYX_ERR(0, 2499, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_my_trades", 1, 1, 1, i); __PYX_ERR(0, 2499, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 2499, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_my_trades", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 2499, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_my_trades", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_144get_my_trades(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_144get_my_trades(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_my_trades", 0);

  /* "unicorn_binance_rest_api/manager.py":2534
 * 
 *         """
 *         return self._get('myTrades', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_system_status(self):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_get_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2534, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2534, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 2534, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[8], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2534, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":2499
 *         return None
 * 
 *     def get_my_trades(self, **params):             # <<<<<<<<<<<<<<
 *         """Get trades for a specific symbol.
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_my_trades", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":2536
 *         return self._get('myTrades', True, data=params)
 * 
 *     def get_system_status(self):             # <<<<<<<<<<<<<<
 *         """Get system status detail.
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_147get_system_status(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_146get_system_status, "Get system status detail.\n\n        https://binance-docs.github.io/apidocs/spot/en/#system-status-sapi-system\n\n        :returns: API response\n\n        .. code-block:: python\n\n            {\n                \"status\": 0,        # 0: normal\357\274\2141\357\274\232system maintenance\n                \"msg\": \"normal\"     # normal or System maintenance.\n            }\n\n        :raises: BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_147get_system_status = {"get_system_status", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_147get_system_status, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_146get_system_status};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_147get_system_status(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_system_status (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 2536, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 2536, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "get_system_status", 0) < 0) __PYX_ERR(0, 2536, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_system_status", 1, 1, 1, i); __PYX_ERR(0, 2536, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 2536, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_system_status", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 2536, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_system_status", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_146get_system_status(__pyx_self, __pyx_v_self);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_146get_system_status(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_system_status", 0);

  /* "unicorn_binance_rest_api/manager.py":2553
 * 
 *         """
 *         return self._request_margin_api('get', 'system/status')             # <<<<<<<<<<<<<<
 * 
 *     def get_account_status(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2553, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[9], NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2553, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_r = __pyx_t_2;
  __pyx_t_2 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":2536
 *         return self._get('myTrades', True, data=params)
 * 
 *     def get_system_status(self):             # <<<<<<<<<<<<<<
 *         """Get system status detail.
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_system_status", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":2555
 *         return self._request_margin_api('get', 'system/status')
 * 
 *     def get_account_status(self, **params):             # <<<<<<<<<<<<<<
 *         """Get account status detail.
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_149get_account_status(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_148get_account_status, "Get account status detail.\n\n        https://binance-docs.github.io/apidocs/spot/en/#account-status-sapi-user_data\n\n        :param recvWindow: the number of milliseconds the request is valid for\n        :type recvWindow: int\n\n        :returns: API response\n\n        .. code-block:: python\n\n            {\n                \"data\": \"Normal\"\n            }\n\n        :raises: BinanceWithdrawException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_149get_account_status = {"get_account_status", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_149get_account_status, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_148get_account_status};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_149get_account_status(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_account_status (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 2555, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 2555, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "get_account_status", 1) < 0) __PYX_ERR(0, 2555, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_account_status", 1, 1, 1, i); __PYX_ERR(0, 2555, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 2555, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_account_status", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 2555, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_account_status", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_148get_account_status(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_148get_account_status(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_v_res = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  size_t __pyx_t_4;
  int __pyx_t_5;
  int __pyx_t_6;
  PyObject *__pyx_t_7 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_account_status", 0);

  /* "unicorn_binance_rest_api/manager.py":2574
 * 
 *         """
 *         res = self._request_margin_api('get', 'account/status', True, data=params)             # <<<<<<<<<<<<<<
 *         if not res.get('success'):
 *             raise BinanceWithdrawException(res['msg'])
*/
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2574, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2574, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 2574, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[10], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2574, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_v_res = __pyx_t_3;
  __pyx_t_3 = 0;

  /* "unicorn_binance_rest_api/manager.py":2575
 *         """
 *         res = self._request_margin_api('get', 'account/status', True, data=params)
 *         if not res.get('success'):             # <<<<<<<<<<<<<<
 *             raise BinanceWithdrawException(res['msg'])
 *         return res
*/
  __pyx_t_2 = __pyx_v_res;
  __Pyx_INCREF(__pyx_t_2);
  __pyx_t_4 = 0;
  {
    PyObject *__pyx_callargs[2] = {__pyx_t_2, __pyx_mstate_global->__pyx_n_u_success};
    __pyx_t_3 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_get, __pyx_callargs+__pyx_t_4, (2-__pyx_t_4) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2575, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
  }
  __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_5 < 0))) __PYX_ERR(0, 2575, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  __pyx_t_6 = (!__pyx_t_5);
  if (unlikely(__pyx_t_6)) {

    /* "unicorn_binance_rest_api/manager.py":2576
 *         res = self._request_margin_api('get', 'account/status', True, data=params)
 *         if not res.get('success'):
 *             raise BinanceWithdrawException(res['msg'])             # <<<<<<<<<<<<<<
 *         return res
 * 
*/
    __pyx_t_2 = NULL;
    __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_mstate_global->__pyx_n_u_BinanceWithdrawException); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2576, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_t_7 = __Pyx_PyObject_Dict_GetItem(__pyx_v_res, __pyx_mstate_global->__pyx_n_u_msg); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2576, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_7);
    __pyx_t_4 = 1;
    #if CYTHON_UNPACK_METHODS
    if (unlikely(PyMethod_Check(__pyx_t_1))) {
      __pyx_t_2 = PyMethod_GET_SELF(__pyx_t_1);
      assert(__pyx_t_2);
      PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_1);
      __Pyx_INCREF(__pyx_t_2);
      __Pyx_INCREF(__pyx__function);
      __Pyx_DECREF_SET(__pyx_t_1, __pyx__function);
      __pyx_t_4 = 0;
    }
    #endif
    {
      PyObject *__pyx_callargs[2] = {__pyx_t_2, __pyx_t_7};
      __pyx_t_3 = __Pyx_PyObject_FastCall(__pyx_t_1, __pyx_callargs+__pyx_t_4, (2-__pyx_t_4) | (__pyx_t_4*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
      __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2576, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_3);
    }
    __Pyx_Raise(__pyx_t_3, 0, 0, 0);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __PYX_ERR(0, 2576, __pyx_L1_error)

    /* "unicorn_binance_rest_api/manager.py":2575
 *         """
 *         res = self._request_margin_api('get', 'account/status', True, data=params)
 *         if not res.get('success'):             # <<<<<<<<<<<<<<
 *             raise BinanceWithdrawException(res['msg'])
 *         return res
*/
  }

  /* "unicorn_binance_rest_api/manager.py":2577
 *         if not res.get('success'):
 *             raise BinanceWithdrawException(res['msg'])
 *         return res             # <<<<<<<<<<<<<<
 * 
 *     def get_account_api_trading_status(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __Pyx_INCREF(__pyx_v_res);
  __pyx_r = __pyx_v_res;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":2555
 *         return self._request_margin_api('get', 'system/status')
 * 
 *     def get_account_status(self, **params):             # <<<<<<<<<<<<<<
 *         """Get account status detail.
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_account_status", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_res);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":2579
 *         return res
 * 
 *     def get_account_api_trading_status(self, **params):             # <<<<<<<<<<<<<<
 *         r"""Fetch account api trading status detail.
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_151get_account_api_trading_status(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_150get_account_api_trading_status, "Fetch account api trading status detail.\n\n        https://binance-docs.github.io/apidocs/spot/en/#account-api-trading-status-sapi-user_data\n\n        :param recvWindow: the number of milliseconds the request is valid for\n        :type recvWindow: int\n\n        :return: API response\n\n        .. code-block:: python\n\n            {\n                \"data\": {          // API trading status detail\n                    \"isLocked\": false,   // API trading function is locked or not\n                    \"plannedRecoverTime\": 0,  // If API trading function is locked, this is the planned recover time\n                    \"triggerCondition\": {\n                            \"GCR\": 150,  // Number of GTC orders\n                            \"IFER\": 150, // Number of FOK/IOC orders\n                            \"UFR\": 300   // Number of orders\n                    },\n                    \"indicators\": {  // The indicators updated every 30 seconds\n                         \"BTCUSDT\": [  // The symbol\n                            {\n                                \"i\": \"UFR\",  // Unfilled Ratio (UFR)\n                                \"c\": 20,     // Count of all orders\n                                \"v\": 0.05,   // Current UFR value\n                                \"t\": 0.995   // Trigger UFR value\n                            },\n                            {\n                                \"i\": \"IFER\", // IOC/FOK Expiration Ratio (IFER)\n                                \"c\": 20,     // Count of FOK/IOC orders\n                                \"v\": 0.99,   // Current IFER value\n                                \"t\": 0.99    // Trigger IFER value\n                            },\n                            {\n                                \"i\": \"GCR\",  // GTC Cancellation Ratio (GCR)\n                                \"c\": 20,     // Count of GTC orders\n                                \"v\": 0.99,   // Current GCR value\n              ""                  \"t\": 0.99    // Trigger GCR value\n                            }\n                        ],\n                        \"ETHUSDT\": [\n                            {\n                                \"i\": \"UFR\",\n                                \"c\": 20,\n                                \"v\": 0.05,\n                                \"t\": 0.995\n                            },\n                            {\n                                \"i\": \"IFER\",\n                                \"c\": 20,\n                                \"v\": 0.99,\n                                \"t\": 0.99\n                            },\n                            {\n                                \"i\": \"GCR\",\n                                \"c\": 20,\n                                \"v\": 0.99,\n                                \"t\": 0.99\n                            }\n                        ]\n                    },\n                    \"updateTime\": 1547630471725\n                }\n            }\n\n        :raises: BinanceWithdrawException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_151get_account_api_trading_status = {"get_account_api_trading_status", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_151get_account_api_trading_status, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_150get_account_api_trading_status};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_151get_account_api_trading_status(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_account_api_trading_status (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 2579, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 2579, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "get_account_api_trading_status", 1) < 0) __PYX_ERR(0, 2579, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_account_api_trading_status", 1, 1, 1, i); __PYX_ERR(0, 2579, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 2579, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_account_api_trading_status", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 2579, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_account_api_trading_status", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_150get_account_api_trading_status(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_150get_account_api_trading_status(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_v_res = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  size_t __pyx_t_4;
  int __pyx_t_5;
  int __pyx_t_6;
  PyObject *__pyx_t_7 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_account_api_trading_status", 0);

  /* "unicorn_binance_rest_api/manager.py":2649
 * 
 *         """
 *         res = self._request_margin_api('get', 'account/apiTradingStatus', True, data=params)             # <<<<<<<<<<<<<<
 *         if not res.get('success'):
 *             raise BinanceWithdrawException(res['msg'])
*/
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2649, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2649, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 2649, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[11], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2649, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_v_res = __pyx_t_3;
  __pyx_t_3 = 0;

  /* "unicorn_binance_rest_api/manager.py":2650
 *         """
 *         res = self._request_margin_api('get', 'account/apiTradingStatus', True, data=params)
 *         if not res.get('success'):             # <<<<<<<<<<<<<<
 *             raise BinanceWithdrawException(res['msg'])
 *         return res
*/
  __pyx_t_2 = __pyx_v_res;
  __Pyx_INCREF(__pyx_t_2);
  __pyx_t_4 = 0;
  {
    PyObject *__pyx_callargs[2] = {__pyx_t_2, __pyx_mstate_global->__pyx_n_u_success};
    __pyx_t_3 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_get, __pyx_callargs+__pyx_t_4, (2-__pyx_t_4) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2650, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
  }
  __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_5 < 0))) __PYX_ERR(0, 2650, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  __pyx_t_6 = (!__pyx_t_5);
  if (unlikely(__pyx_t_6)) {

    /* "unicorn_binance_rest_api/manager.py":2651
 *         res = self._request_margin_api('get', 'account/apiTradingStatus', True, data=params)
 *         if not res.get('success'):
 *             raise BinanceWithdrawException(res['msg'])             # <<<<<<<<<<<<<<
 *         return res
 * 
*/
    __pyx_t_2 = NULL;
    __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_mstate_global->__pyx_n_u_BinanceWithdrawException); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2651, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_t_7 = __Pyx_PyObject_Dict_GetItem(__pyx_v_res, __pyx_mstate_global->__pyx_n_u_msg); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2651, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_7);
    __pyx_t_4 = 1;
    #if CYTHON_UNPACK_METHODS
    if (unlikely(PyMethod_Check(__pyx_t_1))) {
      __pyx_t_2 = PyMethod_GET_SELF(__pyx_t_1);
      assert(__pyx_t_2);
      PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_1);
      __Pyx_INCREF(__pyx_t_2);
      __Pyx_INCREF(__pyx__function);
      __Pyx_DECREF_SET(__pyx_t_1, __pyx__function);
      __pyx_t_4 = 0;
    }
    #endif
    {
      PyObject *__pyx_callargs[2] = {__pyx_t_2, __pyx_t_7};
      __pyx_t_3 = __Pyx_PyObject_FastCall(__pyx_t_1, __pyx_callargs+__pyx_t_4, (2-__pyx_t_4) | (__pyx_t_4*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
      __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2651, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_3);
    }
    __Pyx_Raise(__pyx_t_3, 0, 0, 0);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __PYX_ERR(0, 2651, __pyx_L1_error)

    /* "unicorn_binance_rest_api/manager.py":2650
 *         """
 *         res = self._request_margin_api('get', 'account/apiTradingStatus', True, data=params)
 *         if not res.get('success'):             # <<<<<<<<<<<<<<
 *             raise BinanceWithdrawException(res['msg'])
 *         return res
*/
  }

  /* "unicorn_binance_rest_api/manager.py":2652
 *         if not res.get('success'):
 *             raise BinanceWithdrawException(res['msg'])
 *         return res             # <<<<<<<<<<<<<<
 * 
 *     def get_dust_log(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __Pyx_INCREF(__pyx_v_res);
  __pyx_r = __pyx_v_res;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":2579
 *         return res
 * 
 *     def get_account_api_trading_status(self, **params):             # <<<<<<<<<<<<<<
 *         r"""Fetch account api trading status detail.
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_account_api_trading_status", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_res);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":2654
 *         return res
 * 
 *     def get_dust_log(self, **params):             # <<<<<<<<<<<<<<
 *         """Get log of small amounts exchanged for BNB.
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_153get_dust_log(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_152get_dust_log, "Get log of small amounts exchanged for BNB.\n\n        https://binance-docs.github.io/apidocs/spot/en/#dustlog-sapi-user_data\n\n        :param startTime: optional\n        :type startTime: int\n        :param endTime: optional\n        :type endTime: int\n        :param recvWindow: the number of milliseconds the request is valid for\n        :type recvWindow: int\n\n        :returns: API response\n\n        .. code-block:: python\n\n            {\n                \"total\": 8,   //Total counts of exchange\n                \"userAssetDribblets\": [\n                    {\n                        \"totalTransferedAmount\": \"0.00132256\",   // Total transfered BNB amount for this exchange.\n                        \"totalServiceChargeAmount\": \"0.00002699\",    //Total service charge amount for this exchange.\n                        \"transId\": 45178372831,\n                        \"userAssetDribbletDetails\": [           //Details of  this exchange.\n                            {\n                                \"transId\": 4359321,\n                                \"serviceChargeAmount\": \"0.000009\",\n                                \"amount\": \"0.0009\",\n                                \"operateTime\": 1615985535000,\n                                \"transferedAmount\": \"0.000441\",\n                                \"fromAsset\": \"USDT\"\n                            },\n                            {\n                                \"transId\": 4359321,\n                                \"serviceChargeAmount\": \"0.00001799\",\n                                \"amount\": \"0.0009\",\n                                \"operateTime\": \"2018-05-03 17:07:04\",\n                                \"transferedAmount\": \"0.00088156\",\n                                \"fromAsset\": \"ETH\"\n                            }\n                        ]\n                    },\n                    {\n                        \"operateTime\":1616203180000,\n             ""           \"totalTransferedAmount\": \"0.00058795\",\n                        \"totalServiceChargeAmount\": \"0.000012\",\n                        \"transId\": 4357015,\n                        \"userAssetDribbletDetails\": [\n                            {\n                                \"transId\": 4357015,\n                                \"serviceChargeAmount\": \"0.00001\"\n                                \"amount\": \"0.001\",\n                                \"operateTime\": 1616203180000,\n                                \"transferedAmount\": \"0.00049\",\n                                \"fromAsset\": \"USDT\"\n                            },\n                            {\n                                \"transId\": 4357015,\n                                \"serviceChargeAmount\": \"0.000002\"\n                                \"amount\": \"0.0001\",\n                                \"operateTime\": 1616203180000,\n                                \"transferedAmount\": \"0.00009795\",\n                                \"fromAsset\": \"ETH\"\n                            }\n                        ]\n                    }\n                ]\n            }\n\n        :raises: BinanceWithdrawException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_153get_dust_log = {"get_dust_log", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_153get_dust_log, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_152get_dust_log};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_153get_dust_log(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_dust_log (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 2654, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 2654, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "get_dust_log", 1) < 0) __PYX_ERR(0, 2654, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_dust_log", 1, 1, 1, i); __PYX_ERR(0, 2654, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 2654, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_dust_log", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 2654, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_dust_log", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_152get_dust_log(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_152get_dust_log(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_v_res = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  size_t __pyx_t_4;
  int __pyx_t_5;
  int __pyx_t_6;
  PyObject *__pyx_t_7 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_dust_log", 0);

  /* "unicorn_binance_rest_api/manager.py":2726
 * 
 *         """
 *         res = self._request_margin_api('get', 'asset/dribblet', True, data=params)             # <<<<<<<<<<<<<<
 *         if not res.get('success'):
 *             raise BinanceWithdrawException(res['msg'])
*/
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2726, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2726, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 2726, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[12], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2726, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_v_res = __pyx_t_3;
  __pyx_t_3 = 0;

  /* "unicorn_binance_rest_api/manager.py":2727
 *         """
 *         res = self._request_margin_api('get', 'asset/dribblet', True, data=params)
 *         if not res.get('success'):             # <<<<<<<<<<<<<<
 *             raise BinanceWithdrawException(res['msg'])
 *         return res
*/
  __pyx_t_2 = __pyx_v_res;
  __Pyx_INCREF(__pyx_t_2);
  __pyx_t_4 = 0;
  {
    PyObject *__pyx_callargs[2] = {__pyx_t_2, __pyx_mstate_global->__pyx_n_u_success};
    __pyx_t_3 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_get, __pyx_callargs+__pyx_t_4, (2-__pyx_t_4) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2727, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
  }
  __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_5 < 0))) __PYX_ERR(0, 2727, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  __pyx_t_6 = (!__pyx_t_5);
  if (unlikely(__pyx_t_6)) {

    /* "unicorn_binance_rest_api/manager.py":2728
 *         res = self._request_margin_api('get', 'asset/dribblet', True, data=params)
 *         if not res.get('success'):
 *             raise BinanceWithdrawException(res['msg'])             # <<<<<<<<<<<<<<
 *         return res
 * 
*/
    __pyx_t_2 = NULL;
    __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_mstate_global->__pyx_n_u_BinanceWithdrawException); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2728, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_t_7 = __Pyx_PyObject_Dict_GetItem(__pyx_v_res, __pyx_mstate_global->__pyx_n_u_msg); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2728, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_7);
    __pyx_t_4 = 1;
    #if CYTHON_UNPACK_METHODS
    if (unlikely(PyMethod_Check(__pyx_t_1))) {
      __pyx_t_2 = PyMethod_GET_SELF(__pyx_t_1);
      assert(__pyx_t_2);
      PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_1);
      __Pyx_INCREF(__pyx_t_2);
      __Pyx_INCREF(__pyx__function);
      __Pyx_DECREF_SET(__pyx_t_1, __pyx__function);
      __pyx_t_4 = 0;
    }
    #endif
    {
      PyObject *__pyx_callargs[2] = {__pyx_t_2, __pyx_t_7};
      __pyx_t_3 = __Pyx_PyObject_FastCall(__pyx_t_1, __pyx_callargs+__pyx_t_4, (2-__pyx_t_4) | (__pyx_t_4*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
      __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2728, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_3);
    }
    __Pyx_Raise(__pyx_t_3, 0, 0, 0);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __PYX_ERR(0, 2728, __pyx_L1_error)

    /* "unicorn_binance_rest_api/manager.py":2727
 *         """
 *         res = self._request_margin_api('get', 'asset/dribblet', True, data=params)
 *         if not res.get('success'):             # <<<<<<<<<<<<<<
 *             raise BinanceWithdrawException(res['msg'])
 *         return res
*/
  }

  /* "unicorn_binance_rest_api/manager.py":2729
 *         if not res.get('success'):
 *             raise BinanceWithdrawException(res['msg'])
 *         return res             # <<<<<<<<<<<<<<
 * 
 *     def transfer_dust(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __Pyx_INCREF(__pyx_v_res);
  __pyx_r = __pyx_v_res;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":2654
 *         return res
 * 
 *     def get_dust_log(self, **params):             # <<<<<<<<<<<<<<
 *         """Get log of small amounts exchanged for BNB.
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_dust_log", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_res);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":2731
 *         return res
 * 
 *     def transfer_dust(self, **params):             # <<<<<<<<<<<<<<
 *         """Convert dust assets to BNB.
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_155transfer_dust(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_154transfer_dust, "Convert dust assets to BNB.\n\n        https://binance-docs.github.io/apidocs/spot/en/#dust-transfer-user_data\n\n        :param asset: The asset being converted. e.g: 'ONE'\n        :type asset: str\n        :param recvWindow: the number of milliseconds the request is valid for\n        :type recvWindow: int\n\n\n        .. code:: python\n\n            result = client.transfer_dust(asset='ONE')\n\n        :returns: API response\n\n        .. code-block:: python\n\n            {\n                \"totalServiceCharge\":\"0.02102542\",\n                \"totalTransfered\":\"1.05127099\",\n                \"transferResult\":[\n                    {\n                        \"amount\":\"0.03000000\",\n                        \"fromAsset\":\"ETH\",\n                        \"operateTime\":1563368549307,\n                        \"serviceChargeAmount\":\"0.00500000\",\n                        \"tranId\":2970932918,\n                        \"transferedAmount\":\"0.25000000\"\n                    }\n                ]\n            }\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_155transfer_dust = {"transfer_dust", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_155transfer_dust, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_154transfer_dust};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_155transfer_dust(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("transfer_dust (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 2731, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 2731, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "transfer_dust", 1) < 0) __PYX_ERR(0, 2731, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("transfer_dust", 1, 1, 1, i); __PYX_ERR(0, 2731, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 2731, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("transfer_dust", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 2731, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.transfer_dust", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_154transfer_dust(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_154transfer_dust(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("transfer_dust", 0);

  /* "unicorn_binance_rest_api/manager.py":2768
 * 
 *         """
 *         return self._request_margin_api('post', 'asset/dust', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_asset_dividend_history(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2768, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2768, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 2768, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[13], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2768, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":2731
 *         return res
 * 
 *     def transfer_dust(self, **params):             # <<<<<<<<<<<<<<
 *         """Convert dust assets to BNB.
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.transfer_dust", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":2770
 *         return self._request_margin_api('post', 'asset/dust', True, data=params)
 * 
 *     def get_asset_dividend_history(self, **params):             # <<<<<<<<<<<<<<
 *         """Query asset dividend record.
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_157get_asset_dividend_history(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_156get_asset_dividend_history, "Query asset dividend record.\n\n        https://binance-docs.github.io/apidocs/spot/en/#asset-dividend-record-user_data\n\n        :param asset: optional\n        :type asset: str\n        :param startTime: optional\n        :type startTime: long\n        :param endTime: optional\n        :type endTime: long\n        :param recvWindow: the number of milliseconds the request is valid for\n        :type recvWindow: int\n\n\n        .. code:: python\n\n            result = client.get_asset_dividend_history()\n\n        :returns: API response\n\n        .. code-block:: python\n\n            {\n                \"rows\":[\n                    {\n                        \"amount\":\"10.00000000\",\n                        \"asset\":\"BHFT\",\n                        \"divTime\":1563189166000,\n                        \"enInfo\":\"BHFT distribution\",\n                        \"tranId\":2968885920\n                    },\n                    {\n                        \"amount\":\"10.00000000\",\n                        \"asset\":\"BHFT\",\n                        \"divTime\":1563189165000,\n                        \"enInfo\":\"BHFT distribution\",\n                        \"tranId\":2968885920\n                    }\n                ],\n                \"total\":2\n            }\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_157get_asset_dividend_history = {"get_asset_dividend_history", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_157get_asset_dividend_history, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_156get_asset_dividend_history};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_157get_asset_dividend_history(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_asset_dividend_history (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 2770, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 2770, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "get_asset_dividend_history", 1) < 0) __PYX_ERR(0, 2770, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_asset_dividend_history", 1, 1, 1, i); __PYX_ERR(0, 2770, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 2770, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_asset_dividend_history", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 2770, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_asset_dividend_history", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_156get_asset_dividend_history(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_156get_asset_dividend_history(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_asset_dividend_history", 0);

  /* "unicorn_binance_rest_api/manager.py":2816
 * 
 *         """
 *         return self._request_margin_api('get', 'asset/assetDividend', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def query_universal_transfer_history(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2816, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2816, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 2816, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[14], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2816, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":2770
 *         return self._request_margin_api('post', 'asset/dust', True, data=params)
 * 
 *     def get_asset_dividend_history(self, **params):             # <<<<<<<<<<<<<<
 *         """Query asset dividend record.
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_asset_dividend_history", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":2818
 *         return self._request_margin_api('get', 'asset/assetDividend', True, data=params)
 * 
 *     def query_universal_transfer_history(self, **params):             # <<<<<<<<<<<<<<
 *         """Query User Universal Transfer History
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_159query_universal_transfer_history(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_158query_universal_transfer_history, "Query User Universal Transfer History\n\n        https://binance-docs.github.io/apidocs/spot/en/#query-user-universal-transfer-history\n\n        :param type: required\n        :type type: str (ENUM)\n        :param startTime: optional\n        :type startTime: int\n        :param endTime: optional\n        :type endTime: int\n        :param current: optional - Default 1\n        :type current: int\n        :param size: required - Default 10, Max 100\n        :type size: int\n        :param recvWindow: the number of milliseconds the request is valid for\n        :type recvWindow: int\n\n\n        .. code:: python\n\n            transfer_status = client.query_universal_transfer_history(params)\n\n        :returns: API response\n\n        .. code-block:: python\n\n            {\n                \"total\":2,\n                \"rows\":[\n                    {\n                        \"asset\":\"USDT\",\n                        \"amount\":\"1\",\n                        \"type\":\"MAIN_UMFUTURE\"\n                        \"status\": \"CONFIRMED\",\n                        \"tranId\": 11415955596,\n                        \"timestamp\":1544433328000\n                    },\n                    {\n                        \"asset\":\"USDT\",\n                        \"amount\":\"2\",\n                        \"type\":\"MAIN_UMFUTURE\",\n                        \"status\": \"CONFIRMED\",\n                        \"tranId\": 11366865406,\n                        \"timestamp\":1544433328000\n                    }\n                ]\n            }\n\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_159query_universal_transfer_history = {"query_universal_transfer_history", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_159query_universal_transfer_history, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_158query_universal_transfer_history};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_159query_universal_transfer_history(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("query_universal_transfer_history (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 2818, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 2818, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "query_universal_transfer_history", 1) < 0) __PYX_ERR(0, 2818, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("query_universal_transfer_history", 1, 1, 1, i); __PYX_ERR(0, 2818, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 2818, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("query_universal_transfer_history", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 2818, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.query_universal_transfer_history", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_158query_universal_transfer_history(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_158query_universal_transfer_history(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("query_universal_transfer_history", 0);

  /* "unicorn_binance_rest_api/manager.py":2871
 * 
 *         """
 *         return self._request_margin_api('get', 'asset/transfer', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_trade_fee(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2871, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2871, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_signed, Py_True) < 0) __PYX_ERR(0, 2871, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 2871, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[15], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2871, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":2818
 *         return self._request_margin_api('get', 'asset/assetDividend', True, data=params)
 * 
 *     def query_universal_transfer_history(self, **params):             # <<<<<<<<<<<<<<
 *         """Query User Universal Transfer History
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.query_universal_transfer_history", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":2873
 *         return self._request_margin_api('get', 'asset/transfer', signed=True, data=params)
 * 
 *     def get_trade_fee(self, **params):             # <<<<<<<<<<<<<<
 *         """Get trade fee.
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_161get_trade_fee(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_160get_trade_fee, "Get trade fee.\n\n        https://binance-docs.github.io/apidocs/spot/en/#trade-fee-sapi-user_data\n\n        :param symbol: optional\n        :type symbol: str\n        :param recvWindow: the number of milliseconds the request is valid for\n        :type recvWindow: int\n\n        :returns: API response\n\n        .. code-block:: python\n\n            [\n                {\n                    \"symbol\": \"ADABNB\",\n                    \"makerCommission\": \"0.001\",\n                    \"takerCommission\": \"0.001\"\n                },\n                {\n                    \"symbol\": \"BNBBTC\",\n                    \"makerCommission\": \"0.001\",\n                    \"takerCommission\": \"0.001\"\n                }\n            ]\n\n        :raises: BinanceWithdrawException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_161get_trade_fee = {"get_trade_fee", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_161get_trade_fee, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_160get_trade_fee};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_161get_trade_fee(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_trade_fee (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 2873, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 2873, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "get_trade_fee", 1) < 0) __PYX_ERR(0, 2873, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_trade_fee", 1, 1, 1, i); __PYX_ERR(0, 2873, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 2873, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_trade_fee", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 2873, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_trade_fee", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_160get_trade_fee(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_160get_trade_fee(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_v_res = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  size_t __pyx_t_4;
  int __pyx_t_5;
  int __pyx_t_6;
  PyObject *__pyx_t_7 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_trade_fee", 0);

  /* "unicorn_binance_rest_api/manager.py":2903
 * 
 *         """
 *         res = self._request_margin_api('get', 'asset/tradeFee', True, data=params)             # <<<<<<<<<<<<<<
 *         if not res.get('success'):
 *             raise BinanceWithdrawException(res['msg'])
*/
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2903, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2903, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 2903, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[16], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2903, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_v_res = __pyx_t_3;
  __pyx_t_3 = 0;

  /* "unicorn_binance_rest_api/manager.py":2904
 *         """
 *         res = self._request_margin_api('get', 'asset/tradeFee', True, data=params)
 *         if not res.get('success'):             # <<<<<<<<<<<<<<
 *             raise BinanceWithdrawException(res['msg'])
 *         return res
*/
  __pyx_t_2 = __pyx_v_res;
  __Pyx_INCREF(__pyx_t_2);
  __pyx_t_4 = 0;
  {
    PyObject *__pyx_callargs[2] = {__pyx_t_2, __pyx_mstate_global->__pyx_n_u_success};
    __pyx_t_3 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_get, __pyx_callargs+__pyx_t_4, (2-__pyx_t_4) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2904, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
  }
  __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_5 < 0))) __PYX_ERR(0, 2904, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  __pyx_t_6 = (!__pyx_t_5);
  if (unlikely(__pyx_t_6)) {

    /* "unicorn_binance_rest_api/manager.py":2905
 *         res = self._request_margin_api('get', 'asset/tradeFee', True, data=params)
 *         if not res.get('success'):
 *             raise BinanceWithdrawException(res['msg'])             # <<<<<<<<<<<<<<
 *         return res
 * 
*/
    __pyx_t_2 = NULL;
    __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_mstate_global->__pyx_n_u_BinanceWithdrawException); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2905, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_t_7 = __Pyx_PyObject_Dict_GetItem(__pyx_v_res, __pyx_mstate_global->__pyx_n_u_msg); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2905, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_7);
    __pyx_t_4 = 1;
    #if CYTHON_UNPACK_METHODS
    if (unlikely(PyMethod_Check(__pyx_t_1))) {
      __pyx_t_2 = PyMethod_GET_SELF(__pyx_t_1);
      assert(__pyx_t_2);
      PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_1);
      __Pyx_INCREF(__pyx_t_2);
      __Pyx_INCREF(__pyx__function);
      __Pyx_DECREF_SET(__pyx_t_1, __pyx__function);
      __pyx_t_4 = 0;
    }
    #endif
    {
      PyObject *__pyx_callargs[2] = {__pyx_t_2, __pyx_t_7};
      __pyx_t_3 = __Pyx_PyObject_FastCall(__pyx_t_1, __pyx_callargs+__pyx_t_4, (2-__pyx_t_4) | (__pyx_t_4*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
      __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2905, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_3);
    }
    __Pyx_Raise(__pyx_t_3, 0, 0, 0);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __PYX_ERR(0, 2905, __pyx_L1_error)

    /* "unicorn_binance_rest_api/manager.py":2904
 *         """
 *         res = self._request_margin_api('get', 'asset/tradeFee', True, data=params)
 *         if not res.get('success'):             # <<<<<<<<<<<<<<
 *             raise BinanceWithdrawException(res['msg'])
 *         return res
*/
  }

  /* "unicorn_binance_rest_api/manager.py":2906
 *         if not res.get('success'):
 *             raise BinanceWithdrawException(res['msg'])
 *         return res             # <<<<<<<<<<<<<<
 * 
 *     def get_asset_details(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __Pyx_INCREF(__pyx_v_res);
  __pyx_r = __pyx_v_res;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":2873
 *         return self._request_margin_api('get', 'asset/transfer', signed=True, data=params)
 * 
 *     def get_trade_fee(self, **params):             # <<<<<<<<<<<<<<
 *         """Get trade fee.
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_trade_fee", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_res);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":2908
 *         return res
 * 
 *     def get_asset_details(self, **params):             # <<<<<<<<<<<<<<
 *         """Fetch details on assets.
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_163get_asset_details(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_162get_asset_details, "Fetch details on assets.\n\n        https://binance-docs.github.io/apidocs/spot/en/#asset-detail-sapi-user_data\n\n        :param asset: optional\n        :type asset: str\n        :param recvWindow: the number of milliseconds the request is valid for\n        :type recvWindow: int\n\n        :returns: API response\n\n        .. code-block:: python\n\n            {\n                \"CTR\": {\n                    \"minWithdrawAmount\": \"70.00000000\", //min withdraw amount\n                    \"depositStatus\": false,//deposit status (false if ALL of networks' are false)\n                    \"withdrawFee\": 35, // withdraw fee\n                    \"withdrawStatus\": true, //withdraw status (false if ALL of networks' are false)\n                    \"depositTip\": \"Delisted, Deposit Suspended\" //reason\n                },\n                \"SKY\": {\n                    \"minWithdrawAmount\": \"0.02000000\",\n                    \"depositStatus\": true,\n                    \"withdrawFee\": 0.01,\n                    \"withdrawStatus\": true\n                }\n            }\n\n\n        :raises: BinanceWithdrawException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_163get_asset_details = {"get_asset_details", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_163get_asset_details, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_162get_asset_details};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_163get_asset_details(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_asset_details (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 2908, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 2908, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "get_asset_details", 1) < 0) __PYX_ERR(0, 2908, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_asset_details", 1, 1, 1, i); __PYX_ERR(0, 2908, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 2908, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_asset_details", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 2908, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_asset_details", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_162get_asset_details(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_162get_asset_details(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_v_res = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  size_t __pyx_t_4;
  int __pyx_t_5;
  int __pyx_t_6;
  PyObject *__pyx_t_7 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_asset_details", 0);

  /* "unicorn_binance_rest_api/manager.py":2942
 * 
 *         """
 *         res = self._request_margin_api('get', 'asset/assetDetail', True, data=params)             # <<<<<<<<<<<<<<
 *         if not res.get('success'):
 *             raise BinanceWithdrawException(res['msg'])
*/
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2942, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2942, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 2942, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[17], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2942, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_v_res = __pyx_t_3;
  __pyx_t_3 = 0;

  /* "unicorn_binance_rest_api/manager.py":2943
 *         """
 *         res = self._request_margin_api('get', 'asset/assetDetail', True, data=params)
 *         if not res.get('success'):             # <<<<<<<<<<<<<<
 *             raise BinanceWithdrawException(res['msg'])
 *         return res
*/
  __pyx_t_2 = __pyx_v_res;
  __Pyx_INCREF(__pyx_t_2);
  __pyx_t_4 = 0;
  {
    PyObject *__pyx_callargs[2] = {__pyx_t_2, __pyx_mstate_global->__pyx_n_u_success};
    __pyx_t_3 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_get, __pyx_callargs+__pyx_t_4, (2-__pyx_t_4) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2943, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
  }
  __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_5 < 0))) __PYX_ERR(0, 2943, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  __pyx_t_6 = (!__pyx_t_5);
  if (unlikely(__pyx_t_6)) {

    /* "unicorn_binance_rest_api/manager.py":2944
 *         res = self._request_margin_api('get', 'asset/assetDetail', True, data=params)
 *         if not res.get('success'):
 *             raise BinanceWithdrawException(res['msg'])             # <<<<<<<<<<<<<<
 *         return res
 * 
*/
    __pyx_t_2 = NULL;
    __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_mstate_global->__pyx_n_u_BinanceWithdrawException); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2944, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_t_7 = __Pyx_PyObject_Dict_GetItem(__pyx_v_res, __pyx_mstate_global->__pyx_n_u_msg); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2944, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_7);
    __pyx_t_4 = 1;
    #if CYTHON_UNPACK_METHODS
    if (unlikely(PyMethod_Check(__pyx_t_1))) {
      __pyx_t_2 = PyMethod_GET_SELF(__pyx_t_1);
      assert(__pyx_t_2);
      PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_1);
      __Pyx_INCREF(__pyx_t_2);
      __Pyx_INCREF(__pyx__function);
      __Pyx_DECREF_SET(__pyx_t_1, __pyx__function);
      __pyx_t_4 = 0;
    }
    #endif
    {
      PyObject *__pyx_callargs[2] = {__pyx_t_2, __pyx_t_7};
      __pyx_t_3 = __Pyx_PyObject_FastCall(__pyx_t_1, __pyx_callargs+__pyx_t_4, (2-__pyx_t_4) | (__pyx_t_4*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
      __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2944, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_3);
    }
    __Pyx_Raise(__pyx_t_3, 0, 0, 0);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __PYX_ERR(0, 2944, __pyx_L1_error)

    /* "unicorn_binance_rest_api/manager.py":2943
 *         """
 *         res = self._request_margin_api('get', 'asset/assetDetail', True, data=params)
 *         if not res.get('success'):             # <<<<<<<<<<<<<<
 *             raise BinanceWithdrawException(res['msg'])
 *         return res
*/
  }

  /* "unicorn_binance_rest_api/manager.py":2945
 *         if not res.get('success'):
 *             raise BinanceWithdrawException(res['msg'])
 *         return res             # <<<<<<<<<<<<<<
 * 
 *     # Withdraw Endpoints
*/
  __Pyx_XDECREF(__pyx_r);
  __Pyx_INCREF(__pyx_v_res);
  __pyx_r = __pyx_v_res;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":2908
 *         return res
 * 
 *     def get_asset_details(self, **params):             # <<<<<<<<<<<<<<
 *         """Fetch details on assets.
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_asset_details", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_res);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":2949
 *     # Withdraw Endpoints
 * 
 *     def withdraw(self, **params):             # <<<<<<<<<<<<<<
 *         """Submit a withdraw request.
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_165withdraw(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_164withdraw, "Submit a withdraw request.\n\n        https://www.binance.com/restapipub.html\n\n        Assumptions:\n\n        - You must have withdrawal permissions enabled on your API key\n        - You must have withdrawal to the address specified through the website and approved the transaction via email\n\n        :param coin: required\n        :type coin: str\n        :param withdrawOrderId: optional - client id for withdraw\n        :type withdrawOrderId: str\n        :param network: optional\n        :type network: str\n        :param address: optional\n        :type address: str\n        :type addressTag: optional - Secondary address identifier for coins like XRP,XMR etc.\n        :param amount: required\n        :type amount: decimal\n        :param transactionFeeFlag: required - When making internal transfer, true for returning the fee to the\n                                   destination account; false for returning the fee back to the departure account.\n                                   Default false.\n        :type transactionFeeFlag: bool\n        :param name: optional - Description of the address, default asset value passed will be used\n        :type name: str\n        :param recvWindow: the number of milliseconds the request is valid for\n        :type recvWindow: int\n\n        :returns: API response\n\n        .. code-block:: python\n\n            {\n                \"id\":\"7213fea8e94b4a5593d507237e5a555b\"\n            }\n\n        :raises: BinanceRequestException, BinanceAPIException, BinanceWithdrawException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_165withdraw = {"withdraw", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_165withdraw, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_164withdraw};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_165withdraw(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("withdraw (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 2949, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 2949, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "withdraw", 1) < 0) __PYX_ERR(0, 2949, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("withdraw", 1, 1, 1, i); __PYX_ERR(0, 2949, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 2949, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("withdraw", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 2949, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.withdraw", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_164withdraw(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_164withdraw(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_v_res = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  PyObject *__pyx_t_4 = NULL;
  PyObject *__pyx_t_5 = NULL;
  size_t __pyx_t_6;
  PyObject *__pyx_t_7 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("withdraw", 0);

  /* "unicorn_binance_rest_api/manager.py":2991
 *         """
 *         # force a name for the withdrawal if one not set
 *         if 'asset' in params and 'name' not in params:             # <<<<<<<<<<<<<<
 *             params['name'] = params['asset']
 *         res = self._request_margin_api('post', 'capital/withdraw/apply', True, data=params)
*/
  __pyx_t_2 = (__Pyx_PyDict_ContainsTF(__pyx_mstate_global->__pyx_n_u_asset, __pyx_v_params, Py_EQ)); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(0, 2991, __pyx_L1_error)
  if (__pyx_t_2) {
  } else {
    __pyx_t_1 = __pyx_t_2;
    goto __pyx_L4_bool_binop_done;
  }
  __pyx_t_2 = (__Pyx_PyDict_ContainsTF(__pyx_mstate_global->__pyx_n_u_name, __pyx_v_params, Py_NE)); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(0, 2991, __pyx_L1_error)
  __pyx_t_1 = __pyx_t_2;
  __pyx_L4_bool_binop_done:;
  if (__pyx_t_1) {

    /* "unicorn_binance_rest_api/manager.py":2992
 *         # force a name for the withdrawal if one not set
 *         if 'asset' in params and 'name' not in params:
 *             params['name'] = params['asset']             # <<<<<<<<<<<<<<
 *         res = self._request_margin_api('post', 'capital/withdraw/apply', True, data=params)
 *         if not res.get('success'):
*/
    __pyx_t_3 = __Pyx_PyDict_GetItem(__pyx_v_params, __pyx_mstate_global->__pyx_n_u_asset); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2992, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    if (unlikely((PyDict_SetItem(__pyx_v_params, __pyx_mstate_global->__pyx_n_u_name, __pyx_t_3) < 0))) __PYX_ERR(0, 2992, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;

    /* "unicorn_binance_rest_api/manager.py":2991
 *         """
 *         # force a name for the withdrawal if one not set
 *         if 'asset' in params and 'name' not in params:             # <<<<<<<<<<<<<<
 *             params['name'] = params['asset']
 *         res = self._request_margin_api('post', 'capital/withdraw/apply', True, data=params)
*/
  }

  /* "unicorn_binance_rest_api/manager.py":2993
 *         if 'asset' in params and 'name' not in params:
 *             params['name'] = params['asset']
 *         res = self._request_margin_api('post', 'capital/withdraw/apply', True, data=params)             # <<<<<<<<<<<<<<
 *         if not res.get('success'):
 *             raise BinanceWithdrawException(res['msg'])
*/
  __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2993, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __pyx_t_4 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 2993, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (PyDict_SetItem(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 2993, __pyx_L1_error)
  __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_mstate_global->__pyx_tuple[18], __pyx_t_4); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2993, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
  __pyx_v_res = __pyx_t_5;
  __pyx_t_5 = 0;

  /* "unicorn_binance_rest_api/manager.py":2994
 *             params['name'] = params['asset']
 *         res = self._request_margin_api('post', 'capital/withdraw/apply', True, data=params)
 *         if not res.get('success'):             # <<<<<<<<<<<<<<
 *             raise BinanceWithdrawException(res['msg'])
 *         return res
*/
  __pyx_t_4 = __pyx_v_res;
  __Pyx_INCREF(__pyx_t_4);
  __pyx_t_6 = 0;
  {
    PyObject *__pyx_callargs[2] = {__pyx_t_4, __pyx_mstate_global->__pyx_n_u_success};
    __pyx_t_5 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_get, __pyx_callargs+__pyx_t_6, (2-__pyx_t_6) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
    __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
    if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2994, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
  }
  __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 2994, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  __pyx_t_2 = (!__pyx_t_1);
  if (unlikely(__pyx_t_2)) {

    /* "unicorn_binance_rest_api/manager.py":2995
 *         res = self._request_margin_api('post', 'capital/withdraw/apply', True, data=params)
 *         if not res.get('success'):
 *             raise BinanceWithdrawException(res['msg'])             # <<<<<<<<<<<<<<
 *         return res
 * 
*/
    __pyx_t_4 = NULL;
    __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_BinanceWithdrawException); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2995, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_7 = __Pyx_PyObject_Dict_GetItem(__pyx_v_res, __pyx_mstate_global->__pyx_n_u_msg); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2995, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_7);
    __pyx_t_6 = 1;
    #if CYTHON_UNPACK_METHODS
    if (unlikely(PyMethod_Check(__pyx_t_3))) {
      __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_3);
      assert(__pyx_t_4);
      PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_3);
      __Pyx_INCREF(__pyx_t_4);
      __Pyx_INCREF(__pyx__function);
      __Pyx_DECREF_SET(__pyx_t_3, __pyx__function);
      __pyx_t_6 = 0;
    }
    #endif
    {
      PyObject *__pyx_callargs[2] = {__pyx_t_4, __pyx_t_7};
      __pyx_t_5 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+__pyx_t_6, (2-__pyx_t_6) | (__pyx_t_6*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
      __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2995, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_5);
    }
    __Pyx_Raise(__pyx_t_5, 0, 0, 0);
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    __PYX_ERR(0, 2995, __pyx_L1_error)

    /* "unicorn_binance_rest_api/manager.py":2994
 *             params['name'] = params['asset']
 *         res = self._request_margin_api('post', 'capital/withdraw/apply', True, data=params)
 *         if not res.get('success'):             # <<<<<<<<<<<<<<
 *             raise BinanceWithdrawException(res['msg'])
 *         return res
*/
  }

  /* "unicorn_binance_rest_api/manager.py":2996
 *         if not res.get('success'):
 *             raise BinanceWithdrawException(res['msg'])
 *         return res             # <<<<<<<<<<<<<<
 * 
 *     def get_deposit_history(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __Pyx_INCREF(__pyx_v_res);
  __pyx_r = __pyx_v_res;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":2949
 *     # Withdraw Endpoints
 * 
 *     def withdraw(self, **params):             # <<<<<<<<<<<<<<
 *         """Submit a withdraw request.
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.withdraw", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_res);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":2998
 *         return res
 * 
 *     def get_deposit_history(self, **params):             # <<<<<<<<<<<<<<
 *         """Fetch deposit history.
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_167get_deposit_history(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_166get_deposit_history, "Fetch deposit history.\n\n        https://binance-docs.github.io/apidocs/spot/en/#deposit-history-supporting-network-user_data\n\n        :param coin: optional\n        :type coin: str\n        :type status: optional - 0(0:pending,1:success) optional\n        :type status: int\n        :param startTime: optional\n        :type startTime: long\n        :param endTime: optional\n        :type endTime: long\n        :param offset: optional - default:0\n        :type offset: long\n        :param limit: optional\n        :type limit: long\n        :param recvWindow: the number of milliseconds the request is valid for\n        :type recvWindow: int\n\n        :return: API response\n\n        .. code-block:: python\n\n            [\n                {\n                    \"amount\":\"0.00999800\",\n                    \"coin\":\"PAXG\",\n                    \"network\":\"ETH\",\n                    \"status\":1,\n                    \"address\":\"0x788cabe9236ce061e5a892e1a59395a81fc8d62c\",\n                    \"addressTag\":\"\",\n                    \"txId\":\"0xaad4654a3234aa6118af9b4b335f5ae81c360b2394721c019b5d1e75328b09f3\",\n                    \"insertTime\":1599621997000,\n                    \"transferType\":0,\n                    \"confirmTimes\":\"12/12\"\n                },\n                {\n                    \"amount\":\"0.50000000\",\n                    \"coin\":\"IOTA\",\n                    \"network\":\"IOTA\",\n                    \"status\":1,\n                    \"address\":\"SIZ9VLMHWATXKV99LH99CIGFJFUMLEHGWVZVNNZXRJJVWBPHYWPPBOSDORZ9EQSHCZAMPVAPGFYQAUUV9DROOXJLNW\",\n                    \"addressTag\":\"\",\n                    \"txId\":\"ESBFVQUTPIWQNJSPXFNHNYHSQNTGKRVKPRABQWTAXCDWOAKDKYWPTVG9BGXNVNKTLEJGESAVXIKIZ9999\",\n                    \"insertTime\":1599620082000,\n                    \"transferType\":0,\n                    \"confirmTimes\":\"1/1\"\n                }\n            ]\n\n        :raises: BinanceRequestException, Binanc""eAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_167get_deposit_history = {"get_deposit_history", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_167get_deposit_history, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_166get_deposit_history};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_167get_deposit_history(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_deposit_history (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 2998, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 2998, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "get_deposit_history", 1) < 0) __PYX_ERR(0, 2998, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_deposit_history", 1, 1, 1, i); __PYX_ERR(0, 2998, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 2998, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_deposit_history", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 2998, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_deposit_history", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_166get_deposit_history(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_166get_deposit_history(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_deposit_history", 0);

  /* "unicorn_binance_rest_api/manager.py":3052
 * 
 *         """
 *         return self._request_margin_api('get', 'capital/deposit/hisrec', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_withdraw_history(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3052, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3052, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 3052, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[19], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3052, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":2998
 *         return res
 * 
 *     def get_deposit_history(self, **params):             # <<<<<<<<<<<<<<
 *         """Fetch deposit history.
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_deposit_history", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":3054
 *         return self._request_margin_api('get', 'capital/deposit/hisrec', True, data=params)
 * 
 *     def get_withdraw_history(self, **params):             # <<<<<<<<<<<<<<
 *         """Fetch withdraw history.
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_169get_withdraw_history(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_168get_withdraw_history, "Fetch withdraw history.\n\n        https://binance-docs.github.io/apidocs/spot/en/#deposit-history-supporting-network-user_data\n\n        :param coin: optional\n        :type coin: str\n        :param status: 0(0:Email Sent,1:Cancelled 2:Awaiting Approval 3:Rejected 4:Processing 5:Failure 6Completed)\n                       optional\n        :type status: int\n        :param offset: optional - default:0\n        :type offset: int\n        :param limit: optional\n        :type limit: int\n        :param startTime: optional - Default: 90 days from current timestamp\n        :type startTime: int\n        :param endTime: optional - Default: present timestamp\n        :type endTime: int\n        :param recvWindow: the number of milliseconds the request is valid for\n        :type recvWindow: int\n\n        :returns: API response\n\n        .. code-block:: python\n\n            [\n                {\n                    \"address\": \"0x94df8b352de7f46f64b01d3666bf6e936e44ce60\",\n                    \"amount\": \"8.91000000\",\n                    \"applyTime\": \"2019-10-12 11:12:02\",\n                    \"coin\": \"USDT\",\n                    \"id\": \"b6ae22b3aa844210a7041aee7589627c\",\n                    \"withdrawOrderId\": \"WITHDRAWtest123\", // will not be returned if there's no withdrawOrderId for\n                                       this withdraw.\n                    \"network\": \"ETH\",\n                    \"transferType\": 0,   // 1 for internal transfer, 0 for external transfer\n                    \"status\": 6,\n                    \"txId\": \"0xb5ef8c13b968a406cc62a93a8bd80f9e9a906ef1b3fcf20a2e48573c17659268\"\n                },\n                {\n                    \"address\": \"1FZdVHtiBqMrWdjPyRPULCUceZPJ2WLCsB\",\n                    \"amount\": \"0.00150000\",\n                    \"applyTime\": \"2019-09-24 12:43:45\",\n                    \"coin\": \"BTC\",\n                    \"id\": \"156ec387f49b41df8724fa744fa82719\",\n         ""           \"network\": \"BTC\",\n                    \"status\": 6,\n                    \"txId\": \"60fd9007ebfddc753455f95fafa808c4302c836e4d1eebc5a132c36c1d8ac354\"\n                }\n            ]\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_169get_withdraw_history = {"get_withdraw_history", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_169get_withdraw_history, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_168get_withdraw_history};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_169get_withdraw_history(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_withdraw_history (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 3054, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 3054, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "get_withdraw_history", 1) < 0) __PYX_ERR(0, 3054, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_withdraw_history", 1, 1, 1, i); __PYX_ERR(0, 3054, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 3054, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_withdraw_history", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 3054, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_withdraw_history", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_168get_withdraw_history(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_168get_withdraw_history(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_withdraw_history", 0);

  /* "unicorn_binance_rest_api/manager.py":3108
 * 
 *         """
 *         return self._request_margin_api('get', 'capital/withdraw/history', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_withdraw_history_id(self, withdraw_id, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3108, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3108, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 3108, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[20], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3108, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":3054
 *         return self._request_margin_api('get', 'capital/deposit/hisrec', True, data=params)
 * 
 *     def get_withdraw_history(self, **params):             # <<<<<<<<<<<<<<
 *         """Fetch withdraw history.
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_withdraw_history", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":3110
 *         return self._request_margin_api('get', 'capital/withdraw/history', True, data=params)
 * 
 *     def get_withdraw_history_id(self, withdraw_id, **params):             # <<<<<<<<<<<<<<
 *         """Fetch withdraw history.
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_171get_withdraw_history_id(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_170get_withdraw_history_id, "Fetch withdraw history.\n\n        https://binance-docs.github.io/apidocs/spot/en/#deposit-history-supporting-network-user_data\n\n        :param withdraw_id: required\n        :type withdraw_id: str\n        :param asset: optional\n        :type asset: str\n        :type status: 0(0:Email Sent,1:Cancelled 2:Awaiting Approval 3:Rejected 4:Processing 5:Failure 6Completed)\n                      optional\n        :type status: int\n        :param startTime: optional\n        :type startTime: long\n        :param endTime: optional\n        :type endTime: long\n        :param recvWindow: the number of milliseconds the request is valid for\n        :type recvWindow: int\n\n        :returns: API response\n\n        .. code-block:: python\n\n            {\n                \"id\":\"7213fea8e94b4a5593d507237e5a555b\",\n                \"withdrawOrderId\": None,\n                \"amount\": 0.99,\n                \"transactionFee\": 0.01,\n                \"address\": \"0x6915f16f8791d0a1cc2bf47c13a6b2a92000504b\",\n                \"asset\": \"ETH\",\n                \"txId\": \"0xdf33b22bdb2b28b1f75ccd201a4a4m6e7g83jy5fc5d5a9d1340961598cfcb0a1\",\n                \"applyTime\": 1508198532000,\n                \"status\": 4\n            }\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_171get_withdraw_history_id = {"get_withdraw_history_id", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_171get_withdraw_history_id, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_170get_withdraw_history_id};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_171get_withdraw_history_id(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_withdraw_id = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[2] = {0,0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_withdraw_history_id (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,&__pyx_mstate_global->__pyx_n_u_withdraw_id,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 3110, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 3110, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 3110, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "get_withdraw_history_id", 1) < 0) __PYX_ERR(0, 3110, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 2; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_withdraw_history_id", 1, 2, 2, i); __PYX_ERR(0, 3110, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 2)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 3110, __pyx_L3_error)
      values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 3110, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
    __pyx_v_withdraw_id = values[1];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_withdraw_history_id", 1, 2, 2, __pyx_nargs); __PYX_ERR(0, 3110, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_withdraw_history_id", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_170get_withdraw_history_id(__pyx_self, __pyx_v_self, __pyx_v_withdraw_id, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_170get_withdraw_history_id(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_withdraw_id, PyObject *__pyx_v_params) {
  PyObject *__pyx_v_result = NULL;
  PyObject *__pyx_v_entry = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  Py_ssize_t __pyx_t_4;
  PyObject *(*__pyx_t_5)(PyObject *);
  int __pyx_t_6;
  int __pyx_t_7;
  size_t __pyx_t_8;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_withdraw_history_id", 0);

  /* "unicorn_binance_rest_api/manager.py":3148
 * 
 *         """
 *         result = self._request_margin_api('get', 'capital/withdraw/history', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *         for entry in result['withdrawList']:
*/
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3148, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3148, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 3148, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[20], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3148, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_v_result = __pyx_t_3;
  __pyx_t_3 = 0;

  /* "unicorn_binance_rest_api/manager.py":3150
 *         result = self._request_margin_api('get', 'capital/withdraw/history', True, data=params)
 * 
 *         for entry in result['withdrawList']:             # <<<<<<<<<<<<<<
 *             if 'id' in entry and entry['id'] == withdraw_id:
 *                 return entry
*/
  __pyx_t_3 = __Pyx_PyObject_Dict_GetItem(__pyx_v_result, __pyx_mstate_global->__pyx_n_u_withdrawList); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3150, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  if (likely(PyList_CheckExact(__pyx_t_3)) || PyTuple_CheckExact(__pyx_t_3)) {
    __pyx_t_2 = __pyx_t_3; __Pyx_INCREF(__pyx_t_2);
    __pyx_t_4 = 0;
    __pyx_t_5 = NULL;
  } else {
    __pyx_t_4 = -1; __pyx_t_2 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3150, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_5 = (CYTHON_COMPILING_IN_LIMITED_API) ? PyIter_Next : __Pyx_PyObject_GetIterNextFunc(__pyx_t_2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3150, __pyx_L1_error)
  }
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  for (;;) {
    if (likely(!__pyx_t_5)) {
      if (likely(PyList_CheckExact(__pyx_t_2))) {
        {
          Py_ssize_t __pyx_temp = __Pyx_PyList_GET_SIZE(__pyx_t_2);
          #if !CYTHON_ASSUME_SAFE_SIZE
          if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 3150, __pyx_L1_error)
          #endif
          if (__pyx_t_4 >= __pyx_temp) break;
        }
        __pyx_t_3 = __Pyx_PyList_GetItemRef(__pyx_t_2, __pyx_t_4);
        ++__pyx_t_4;
      } else {
        {
          Py_ssize_t __pyx_temp = __Pyx_PyTuple_GET_SIZE(__pyx_t_2);
          #if !CYTHON_ASSUME_SAFE_SIZE
          if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 3150, __pyx_L1_error)
          #endif
          if (__pyx_t_4 >= __pyx_temp) break;
        }
        #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
        __pyx_t_3 = __Pyx_NewRef(PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_4));
        #else
        __pyx_t_3 = __Pyx_PySequence_ITEM(__pyx_t_2, __pyx_t_4);
        #endif
        ++__pyx_t_4;
      }
      if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3150, __pyx_L1_error)
    } else {
      __pyx_t_3 = __pyx_t_5(__pyx_t_2);
      if (unlikely(!__pyx_t_3)) {
        PyObject* exc_type = PyErr_Occurred();
        if (exc_type) {
          if (unlikely(!__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) __PYX_ERR(0, 3150, __pyx_L1_error)
          PyErr_Clear();
        }
        break;
      }
    }
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_XDECREF_SET(__pyx_v_entry, __pyx_t_3);
    __pyx_t_3 = 0;

    /* "unicorn_binance_rest_api/manager.py":3151
 * 
 *         for entry in result['withdrawList']:
 *             if 'id' in entry and entry['id'] == withdraw_id:             # <<<<<<<<<<<<<<
 *                 return entry
 * 
*/
    __pyx_t_7 = (__Pyx_PySequence_ContainsTF(__pyx_mstate_global->__pyx_n_u_id, __pyx_v_entry, Py_EQ)); if (unlikely((__pyx_t_7 < 0))) __PYX_ERR(0, 3151, __pyx_L1_error)
    if (__pyx_t_7) {
    } else {
      __pyx_t_6 = __pyx_t_7;
      goto __pyx_L6_bool_binop_done;
    }
    __pyx_t_3 = __Pyx_PyObject_Dict_GetItem(__pyx_v_entry, __pyx_mstate_global->__pyx_n_u_id); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3151, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_1 = PyObject_RichCompare(__pyx_t_3, __pyx_v_withdraw_id, Py_EQ); __Pyx_XGOTREF(__pyx_t_1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3151, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely((__pyx_t_7 < 0))) __PYX_ERR(0, 3151, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __pyx_t_6 = __pyx_t_7;
    __pyx_L6_bool_binop_done:;
    if (__pyx_t_6) {

      /* "unicorn_binance_rest_api/manager.py":3152
 *         for entry in result['withdrawList']:
 *             if 'id' in entry and entry['id'] == withdraw_id:
 *                 return entry             # <<<<<<<<<<<<<<
 * 
 *         raise Exception("There is no entry with withdraw id", result)
*/
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(__pyx_v_entry);
      __pyx_r = __pyx_v_entry;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      goto __pyx_L0;

      /* "unicorn_binance_rest_api/manager.py":3151
 * 
 *         for entry in result['withdrawList']:
 *             if 'id' in entry and entry['id'] == withdraw_id:             # <<<<<<<<<<<<<<
 *                 return entry
 * 
*/
    }

    /* "unicorn_binance_rest_api/manager.py":3150
 *         result = self._request_margin_api('get', 'capital/withdraw/history', True, data=params)
 * 
 *         for entry in result['withdrawList']:             # <<<<<<<<<<<<<<
 *             if 'id' in entry and entry['id'] == withdraw_id:
 *                 return entry
*/
  }
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "unicorn_binance_rest_api/manager.py":3154
 *                 return entry
 * 
 *         raise Exception("There is no entry with withdraw id", result)             # <<<<<<<<<<<<<<
 * 
 *     def get_deposit_address(self, **params):
*/
  __pyx_t_1 = NULL;
  __Pyx_INCREF((PyObject *)(((PyTypeObject*)PyExc_Exception)));
  __pyx_t_3 = ((PyObject *)(((PyTypeObject*)PyExc_Exception))); 
  __pyx_t_8 = 1;
  {
    PyObject *__pyx_callargs[3] = {__pyx_t_1, __pyx_mstate_global->__pyx_kp_u_There_is_no_entry_with_withdraw, __pyx_v_result};
    __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+__pyx_t_8, (3-__pyx_t_8) | (__pyx_t_8*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
    __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3154, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
  }
  __Pyx_Raise(__pyx_t_2, 0, 0, 0);
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __PYX_ERR(0, 3154, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":3110
 *         return self._request_margin_api('get', 'capital/withdraw/history', True, data=params)
 * 
 *     def get_withdraw_history_id(self, withdraw_id, **params):             # <<<<<<<<<<<<<<
 *         """Fetch withdraw history.
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_withdraw_history_id", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_result);
  __Pyx_XDECREF(__pyx_v_entry);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":3156
 *         raise Exception("There is no entry with withdraw id", result)
 * 
 *     def get_deposit_address(self, **params):             # <<<<<<<<<<<<<<
 *         """Fetch a deposit address for a symbol
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_173get_deposit_address(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_172get_deposit_address, "Fetch a deposit address for a symbol\n\n        https://binance-docs.github.io/apidocs/spot/en/#deposit-history-supporting-network-user_data\n\n        :param coin: required\n        :type coin: str\n        :param network: optional\n        :type network: str\n        :param recvWindow: the number of milliseconds the request is valid for\n        :type recvWindow: int\n\n        :returns: API response\n\n        .. code-block:: python\n\n            {\n                \"address\": \"1HPn8Rx2y6nNSfagQBKy27GB99Vbzg89wv\",\n                \"coin\": \"BTC\",\n                \"tag\": \"\",\n                \"url\": \"https://btc.com/1HPn8Rx2y6nNSfagQBKy27GB99Vbzg89wv\"\n            }\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_173get_deposit_address = {"get_deposit_address", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_173get_deposit_address, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_172get_deposit_address};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_173get_deposit_address(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_deposit_address (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 3156, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 3156, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "get_deposit_address", 1) < 0) __PYX_ERR(0, 3156, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_deposit_address", 1, 1, 1, i); __PYX_ERR(0, 3156, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 3156, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_deposit_address", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 3156, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_deposit_address", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_172get_deposit_address(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_172get_deposit_address(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_deposit_address", 0);

  /* "unicorn_binance_rest_api/manager.py":3182
 * 
 *         """
 *         return self._request_margin_api('get', 'capital/deposit/address', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     # User Stream Endpoints
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3182, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3182, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 3182, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[21], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3182, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":3156
 *         raise Exception("There is no entry with withdraw id", result)
 * 
 *     def get_deposit_address(self, **params):             # <<<<<<<<<<<<<<
 *         """Fetch a deposit address for a symbol
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_deposit_address", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":3186
 *     # User Stream Endpoints
 * 
 *     def stream_get_listen_key(self, output="value", throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         """Start a new user data stream and return the listen key
 *         If a stream already exists it should return the same key.
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_175stream_get_listen_key(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_174stream_get_listen_key, "Start a new user data stream and return the listen key\n        If a stream already exists it should return the same key.\n        If the stream becomes invalid a new key is returned.\n\n        Can be used to keep the user stream alive.\n\n        https://binance-docs.github.io/apidocs/spot/en/#start-user-data-stream-user_stream\n\n        :param output: Set `output` to \"raw_data\" to receive the request resource, default is \"value\" which returns\n                        the plain listenKey.\n        :type output: str\n        :param throw_exception: Default `True`, if `False` the raw response will be returned.\n        :type throw_exception: bool\n        :returns: API response\n\n        .. code-block:: python\n\n            {\n                \"listenKey\": \"pqia91ma19a5s61cv6a81va65sdf19v8a65a1a5s61cv6a81va65sdf19v8a65a1\"\n            }\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_175stream_get_listen_key = {"stream_get_listen_key", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_175stream_get_listen_key, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_174stream_get_listen_key};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_175stream_get_listen_key(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_output = 0;
  PyObject *__pyx_v_throw_exception = 0;
  PyObject *__pyx_v_kwargs = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[3] = {0,0,0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("stream_get_listen_key (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_kwargs = PyDict_New(); if (unlikely(!__pyx_v_kwargs)) return NULL;
  __Pyx_GOTREF(__pyx_v_kwargs);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,&__pyx_mstate_global->__pyx_n_u_output,&__pyx_mstate_global->__pyx_n_u_throw_exception,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 3186, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  3:
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 3186, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 3186, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 3186, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_kwargs, values, kwd_pos_args, __pyx_kwds_len, "stream_get_listen_key", 1) < 0) __PYX_ERR(0, 3186, __pyx_L3_error)
      if (!values[1]) values[1] = __Pyx_NewRef(((PyObject *)((PyObject*)__pyx_mstate_global->__pyx_n_u_value)));
      if (!values[2]) values[2] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_True)));
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("stream_get_listen_key", 0, 1, 3, i); __PYX_ERR(0, 3186, __pyx_L3_error) }
      }
    } else {
      switch (__pyx_nargs) {
        case  3:
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 3186, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 3186, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 3186, __pyx_L3_error)
        break;
        default: goto __pyx_L5_argtuple_error;
      }
      if (!values[1]) values[1] = __Pyx_NewRef(((PyObject *)((PyObject*)__pyx_mstate_global->__pyx_n_u_value)));
      if (!values[2]) values[2] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_True)));
    }
    __pyx_v_self = values[0];
    __pyx_v_output = values[1];
    __pyx_v_throw_exception = values[2];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("stream_get_listen_key", 0, 1, 3, __pyx_nargs); __PYX_ERR(0, 3186, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_kwargs); __pyx_v_kwargs = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.stream_get_listen_key", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_174stream_get_listen_key(__pyx_self, __pyx_v_self, __pyx_v_output, __pyx_v_throw_exception, __pyx_v_kwargs);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_kwargs);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_174stream_get_listen_key(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_output, PyObject *__pyx_v_throw_exception, PyObject *__pyx_v_kwargs) {
  PyObject *__pyx_v_res = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  PyObject *__pyx_t_4 = NULL;
  int __pyx_t_5;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("stream_get_listen_key", 0);

  /* "unicorn_binance_rest_api/manager.py":3211
 * 
 *         """
 *         res = self._post('userDataStream', False, data={}, version=self.PRIVATE_API_VERSION,             # <<<<<<<<<<<<<<
 *                          throw_exception=throw_exception, **kwargs)
 *         if output == "value":
*/
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_post_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3211, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_3 = __Pyx_PyDict_NewPresized(3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3211, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __pyx_t_4 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3211, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (PyDict_SetItem(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_data, __pyx_t_4) < 0) __PYX_ERR(0, 3211, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
  __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_PRIVATE_API_VERSION); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3211, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (PyDict_SetItem(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_version_2, __pyx_t_4) < 0) __PYX_ERR(0, 3211, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":3212
 *         """
 *         res = self._post('userDataStream', False, data={}, version=self.PRIVATE_API_VERSION,
 *                          throw_exception=throw_exception, **kwargs)             # <<<<<<<<<<<<<<
 *         if output == "value":
 *             return res['listenKey']
*/
  if (PyDict_SetItem(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_throw_exception, __pyx_v_throw_exception) < 0) __PYX_ERR(0, 3211, __pyx_L1_error)
  __pyx_t_2 = __pyx_t_3;
  __pyx_t_3 = 0;
  if (__Pyx_MergeKeywords(__pyx_t_2, __pyx_v_kwargs) < 0) __PYX_ERR(0, 3212, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":3211
 * 
 *         """
 *         res = self._post('userDataStream', False, data={}, version=self.PRIVATE_API_VERSION,             # <<<<<<<<<<<<<<
 *                          throw_exception=throw_exception, **kwargs)
 *         if output == "value":
*/
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[22], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3211, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_v_res = __pyx_t_3;
  __pyx_t_3 = 0;

  /* "unicorn_binance_rest_api/manager.py":3213
 *         res = self._post('userDataStream', False, data={}, version=self.PRIVATE_API_VERSION,
 *                          throw_exception=throw_exception, **kwargs)
 *         if output == "value":             # <<<<<<<<<<<<<<
 *             return res['listenKey']
 *         elif output == "raw_data":
*/
  __pyx_t_5 = (__Pyx_PyUnicode_Equals(__pyx_v_output, __pyx_mstate_global->__pyx_n_u_value, Py_EQ)); if (unlikely((__pyx_t_5 < 0))) __PYX_ERR(0, 3213, __pyx_L1_error)
  if (__pyx_t_5) {

    /* "unicorn_binance_rest_api/manager.py":3214
 *                          throw_exception=throw_exception, **kwargs)
 *         if output == "value":
 *             return res['listenKey']             # <<<<<<<<<<<<<<
 *         elif output == "raw_data":
 *             return res
*/
    __Pyx_XDECREF(__pyx_r);
    __pyx_t_3 = __Pyx_PyObject_Dict_GetItem(__pyx_v_res, __pyx_mstate_global->__pyx_n_u_listenKey); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3214, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_r = __pyx_t_3;
    __pyx_t_3 = 0;
    goto __pyx_L0;

    /* "unicorn_binance_rest_api/manager.py":3213
 *         res = self._post('userDataStream', False, data={}, version=self.PRIVATE_API_VERSION,
 *                          throw_exception=throw_exception, **kwargs)
 *         if output == "value":             # <<<<<<<<<<<<<<
 *             return res['listenKey']
 *         elif output == "raw_data":
*/
  }

  /* "unicorn_binance_rest_api/manager.py":3215
 *         if output == "value":
 *             return res['listenKey']
 *         elif output == "raw_data":             # <<<<<<<<<<<<<<
 *             return res
 *         else:
*/
  __pyx_t_5 = (__Pyx_PyUnicode_Equals(__pyx_v_output, __pyx_mstate_global->__pyx_n_u_raw_data, Py_EQ)); if (unlikely((__pyx_t_5 < 0))) __PYX_ERR(0, 3215, __pyx_L1_error)
  if (__pyx_t_5) {

    /* "unicorn_binance_rest_api/manager.py":3216
 *             return res['listenKey']
 *         elif output == "raw_data":
 *             return res             # <<<<<<<<<<<<<<
 *         else:
 *             return res['listenKey']
*/
    __Pyx_XDECREF(__pyx_r);
    __Pyx_INCREF(__pyx_v_res);
    __pyx_r = __pyx_v_res;
    goto __pyx_L0;

    /* "unicorn_binance_rest_api/manager.py":3215
 *         if output == "value":
 *             return res['listenKey']
 *         elif output == "raw_data":             # <<<<<<<<<<<<<<
 *             return res
 *         else:
*/
  }

  /* "unicorn_binance_rest_api/manager.py":3218
 *             return res
 *         else:
 *             return res['listenKey']             # <<<<<<<<<<<<<<
 * 
 *     def stream_keepalive(self, listenKey, throw_exception=True, **kwargs):
*/
  /*else*/ {
    __Pyx_XDECREF(__pyx_r);
    __pyx_t_3 = __Pyx_PyObject_Dict_GetItem(__pyx_v_res, __pyx_mstate_global->__pyx_n_u_listenKey); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3218, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_r = __pyx_t_3;
    __pyx_t_3 = 0;
    goto __pyx_L0;
  }

  /* "unicorn_binance_rest_api/manager.py":3186
 *     # User Stream Endpoints
 * 
 *     def stream_get_listen_key(self, output="value", throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         """Start a new user data stream and return the listen key
 *         If a stream already exists it should return the same key.
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.stream_get_listen_key", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_res);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":3220
 *             return res['listenKey']
 * 
 *     def stream_keepalive(self, listenKey, throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         """PING a user data stream to prevent a timeout.
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_177stream_keepalive(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_176stream_keepalive, "PING a user data stream to prevent a timeout.\n\n        https://binance-docs.github.io/apidocs/spot/en/#keepalive-user-data-stream-user_stream\n\n        :param listenKey: required\n        :type listenKey: str\n        :param throw_exception: Default `True`, if `False` the raw response will be returned.\n        :type throw_exception: bool\n\n        :returns: API response\n\n        .. code-block:: python\n\n            {}\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_177stream_keepalive = {"stream_keepalive", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_177stream_keepalive, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_176stream_keepalive};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_177stream_keepalive(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_listenKey = 0;
  PyObject *__pyx_v_throw_exception = 0;
  PyObject *__pyx_v_kwargs = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[3] = {0,0,0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("stream_keepalive (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_kwargs = PyDict_New(); if (unlikely(!__pyx_v_kwargs)) return NULL;
  __Pyx_GOTREF(__pyx_v_kwargs);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,&__pyx_mstate_global->__pyx_n_u_listenKey,&__pyx_mstate_global->__pyx_n_u_throw_exception,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 3220, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  3:
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 3220, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 3220, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 3220, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_kwargs, values, kwd_pos_args, __pyx_kwds_len, "stream_keepalive", 1) < 0) __PYX_ERR(0, 3220, __pyx_L3_error)
      if (!values[2]) values[2] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_True)));
      for (Py_ssize_t i = __pyx_nargs; i < 2; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("stream_keepalive", 0, 2, 3, i); __PYX_ERR(0, 3220, __pyx_L3_error) }
      }
    } else {
      switch (__pyx_nargs) {
        case  3:
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 3220, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 3220, __pyx_L3_error)
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 3220, __pyx_L3_error)
        break;
        default: goto __pyx_L5_argtuple_error;
      }
      if (!values[2]) values[2] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_True)));
    }
    __pyx_v_self = values[0];
    __pyx_v_listenKey = values[1];
    __pyx_v_throw_exception = values[2];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("stream_keepalive", 0, 2, 3, __pyx_nargs); __PYX_ERR(0, 3220, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_kwargs); __pyx_v_kwargs = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.stream_keepalive", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_176stream_keepalive(__pyx_self, __pyx_v_self, __pyx_v_listenKey, __pyx_v_throw_exception, __pyx_v_kwargs);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_kwargs);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_176stream_keepalive(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_listenKey, PyObject *__pyx_v_throw_exception, PyObject *__pyx_v_kwargs) {
  PyObject *__pyx_v_params = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  PyObject *__pyx_t_4 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("stream_keepalive", 0);

  /* "unicorn_binance_rest_api/manager.py":3240
 *         """
 *         params = {
 *             'listenKey': listenKey             # <<<<<<<<<<<<<<
 *         }
 *         return self._put('userDataStream', False, data=params, version=self.PRIVATE_API_VERSION,
*/
  __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3240, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_t_1, __pyx_mstate_global->__pyx_n_u_listenKey, __pyx_v_listenKey) < 0) __PYX_ERR(0, 3240, __pyx_L1_error)
  __pyx_v_params = ((PyObject*)__pyx_t_1);
  __pyx_t_1 = 0;

  /* "unicorn_binance_rest_api/manager.py":3242
 *             'listenKey': listenKey
 *         }
 *         return self._put('userDataStream', False, data=params, version=self.PRIVATE_API_VERSION,             # <<<<<<<<<<<<<<
 *                          throw_exception=throw_exception, **kwargs)
 * 
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_put_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3242, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_3 = __Pyx_PyDict_NewPresized(3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3242, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  if (PyDict_SetItem(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 3242, __pyx_L1_error)
  __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_PRIVATE_API_VERSION); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3242, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (PyDict_SetItem(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_version_2, __pyx_t_4) < 0) __PYX_ERR(0, 3242, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":3243
 *         }
 *         return self._put('userDataStream', False, data=params, version=self.PRIVATE_API_VERSION,
 *                          throw_exception=throw_exception, **kwargs)             # <<<<<<<<<<<<<<
 * 
 *     def stream_close(self, listenKey, throw_exception=True, **kwargs):
*/
  if (PyDict_SetItem(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_throw_exception, __pyx_v_throw_exception) < 0) __PYX_ERR(0, 3242, __pyx_L1_error)
  __pyx_t_2 = __pyx_t_3;
  __pyx_t_3 = 0;
  if (__Pyx_MergeKeywords(__pyx_t_2, __pyx_v_kwargs) < 0) __PYX_ERR(0, 3243, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":3242
 *             'listenKey': listenKey
 *         }
 *         return self._put('userDataStream', False, data=params, version=self.PRIVATE_API_VERSION,             # <<<<<<<<<<<<<<
 *                          throw_exception=throw_exception, **kwargs)
 * 
*/
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[22], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3242, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":3220
 *             return res['listenKey']
 * 
 *     def stream_keepalive(self, listenKey, throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         """PING a user data stream to prevent a timeout.
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.stream_keepalive", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_params);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":3245
 *                          throw_exception=throw_exception, **kwargs)
 * 
 *     def stream_close(self, listenKey, throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         """Close out a user data stream.
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_179stream_close(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_178stream_close, "Close out a user data stream.\n\n        https://binance-docs.github.io/apidocs/spot/en/#close-user-data-stream-user_stream\n\n        :param listenKey: required\n        :type listenKey: str\n        :param throw_exception: Default `True`, if `False` the raw response will be returned.\n        :type throw_exception: bool\n\n        :returns: API response\n\n        .. code-block:: python\n\n            {}\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_179stream_close = {"stream_close", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_179stream_close, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_178stream_close};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_179stream_close(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_listenKey = 0;
  PyObject *__pyx_v_throw_exception = 0;
  PyObject *__pyx_v_kwargs = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[3] = {0,0,0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("stream_close (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_kwargs = PyDict_New(); if (unlikely(!__pyx_v_kwargs)) return NULL;
  __Pyx_GOTREF(__pyx_v_kwargs);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,&__pyx_mstate_global->__pyx_n_u_listenKey,&__pyx_mstate_global->__pyx_n_u_throw_exception,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 3245, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  3:
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 3245, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 3245, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 3245, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_kwargs, values, kwd_pos_args, __pyx_kwds_len, "stream_close", 1) < 0) __PYX_ERR(0, 3245, __pyx_L3_error)
      if (!values[2]) values[2] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_True)));
      for (Py_ssize_t i = __pyx_nargs; i < 2; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("stream_close", 0, 2, 3, i); __PYX_ERR(0, 3245, __pyx_L3_error) }
      }
    } else {
      switch (__pyx_nargs) {
        case  3:
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 3245, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 3245, __pyx_L3_error)
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 3245, __pyx_L3_error)
        break;
        default: goto __pyx_L5_argtuple_error;
      }
      if (!values[2]) values[2] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_True)));
    }
    __pyx_v_self = values[0];
    __pyx_v_listenKey = values[1];
    __pyx_v_throw_exception = values[2];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("stream_close", 0, 2, 3, __pyx_nargs); __PYX_ERR(0, 3245, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_kwargs); __pyx_v_kwargs = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.stream_close", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_178stream_close(__pyx_self, __pyx_v_self, __pyx_v_listenKey, __pyx_v_throw_exception, __pyx_v_kwargs);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_kwargs);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_178stream_close(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_listenKey, PyObject *__pyx_v_throw_exception, PyObject *__pyx_v_kwargs) {
  PyObject *__pyx_v_params = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  PyObject *__pyx_t_4 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("stream_close", 0);

  /* "unicorn_binance_rest_api/manager.py":3265
 *         """
 *         params = {
 *             'listenKey': listenKey             # <<<<<<<<<<<<<<
 *         }
 *         return self._delete('userDataStream', False, data=params, version=self.PRIVATE_API_VERSION,
*/
  __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3265, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_t_1, __pyx_mstate_global->__pyx_n_u_listenKey, __pyx_v_listenKey) < 0) __PYX_ERR(0, 3265, __pyx_L1_error)
  __pyx_v_params = ((PyObject*)__pyx_t_1);
  __pyx_t_1 = 0;

  /* "unicorn_binance_rest_api/manager.py":3267
 *             'listenKey': listenKey
 *         }
 *         return self._delete('userDataStream', False, data=params, version=self.PRIVATE_API_VERSION,             # <<<<<<<<<<<<<<
 *                             throw_exception=throw_exception, **kwargs)
 * 
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_delete_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3267, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_3 = __Pyx_PyDict_NewPresized(3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3267, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  if (PyDict_SetItem(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 3267, __pyx_L1_error)
  __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_PRIVATE_API_VERSION); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3267, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (PyDict_SetItem(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_version_2, __pyx_t_4) < 0) __PYX_ERR(0, 3267, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":3268
 *         }
 *         return self._delete('userDataStream', False, data=params, version=self.PRIVATE_API_VERSION,
 *                             throw_exception=throw_exception, **kwargs)             # <<<<<<<<<<<<<<
 * 
 *     # Margin Trading Endpoints
*/
  if (PyDict_SetItem(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_throw_exception, __pyx_v_throw_exception) < 0) __PYX_ERR(0, 3267, __pyx_L1_error)
  __pyx_t_2 = __pyx_t_3;
  __pyx_t_3 = 0;
  if (__Pyx_MergeKeywords(__pyx_t_2, __pyx_v_kwargs) < 0) __PYX_ERR(0, 3268, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":3267
 *             'listenKey': listenKey
 *         }
 *         return self._delete('userDataStream', False, data=params, version=self.PRIVATE_API_VERSION,             # <<<<<<<<<<<<<<
 *                             throw_exception=throw_exception, **kwargs)
 * 
*/
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[22], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3267, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":3245
 *                          throw_exception=throw_exception, **kwargs)
 * 
 *     def stream_close(self, listenKey, throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         """Close out a user data stream.
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.stream_close", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_params);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":3272
 *     # Margin Trading Endpoints
 * 
 *     def get_margin_account(self, **params):             # <<<<<<<<<<<<<<
 *         """Query cross-margin account details
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_181get_margin_account(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_180get_margin_account, "Query cross-margin account details\n\n        https://binance-docs.github.io/apidocs/spot/en/#query-cross-margin-account-details-user_data\n\n        :returns: API response\n\n        .. code-block:: python\n\n            {\n                \"borrowEnabled\": true,\n                \"marginLevel\": \"11.64405625\",\n                \"totalAssetOfBtc\": \"6.82728457\",\n                \"totalLiabilityOfBtc\": \"0.58633215\",\n                \"totalNetAssetOfBtc\": \"6.24095242\",\n                \"tradeEnabled\": true,\n                \"transferEnabled\": true,\n                \"userAssets\": [\n                    {\n                        \"asset\": \"BTC\",\n                        \"borrowed\": \"0.00000000\",\n                        \"free\": \"0.00499500\",\n                        \"interest\": \"0.00000000\",\n                        \"locked\": \"0.00000000\",\n                        \"netAsset\": \"0.00499500\"\n                    },\n                    {\n                        \"asset\": \"BNB\",\n                        \"borrowed\": \"201.66666672\",\n                        \"free\": \"2346.50000000\",\n                        \"interest\": \"0.00000000\",\n                        \"locked\": \"0.00000000\",\n                        \"netAsset\": \"2144.83333328\"\n                    },\n                    {\n                        \"asset\": \"ETH\",\n                        \"borrowed\": \"0.00000000\",\n                        \"free\": \"0.00000000\",\n                        \"interest\": \"0.00000000\",\n                        \"locked\": \"0.00000000\",\n                        \"netAsset\": \"0.00000000\"\n                    },\n                    {\n                        \"asset\": \"USDT\",\n                        \"borrowed\": \"0.00000000\",\n                        \"free\": \"0.00000000\",\n                        \"interest\": \"0.00000000\",\n                        \"locked\": \"0.00000000\",\n                      ""  \"netAsset\": \"0.00000000\"\n                    }\n                ]\n            }\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_181get_margin_account = {"get_margin_account", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_181get_margin_account, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_180get_margin_account};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_181get_margin_account(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_margin_account (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 3272, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 3272, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "get_margin_account", 1) < 0) __PYX_ERR(0, 3272, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_margin_account", 1, 1, 1, i); __PYX_ERR(0, 3272, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 3272, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_margin_account", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 3272, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_margin_account", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_180get_margin_account(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_180get_margin_account(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_margin_account", 0);

  /* "unicorn_binance_rest_api/manager.py":3328
 * 
 *         """
 *         return self._request_margin_api('get', 'margin/account', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_isolated_margin_account(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3328, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3328, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 3328, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[23], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3328, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":3272
 *     # Margin Trading Endpoints
 * 
 *     def get_margin_account(self, **params):             # <<<<<<<<<<<<<<
 *         """Query cross-margin account details
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_margin_account", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":3330
 *         return self._request_margin_api('get', 'margin/account', True, data=params)
 * 
 *     def get_isolated_margin_account(self, **params):             # <<<<<<<<<<<<<<
 *         """Query isolated margin account details
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_183get_isolated_margin_account(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_182get_isolated_margin_account, "Query isolated margin account details\n\n        https://binance-docs.github.io/apidocs/spot/en/#query-isolated-margin-account-info-user_data\n\n        :param symbols: optional up to 5 margin pairs as a comma separated string\n        :type asset: str\n\n        .. code:: python\n\n            account_info = client.get_isolated_margin_account()\n            account_info = client.get_isolated_margin_account(symbols=\"BTCUSDT,ETHUSDT\")\n\n        :returns: API response\n\n        .. code-block:: python\n\n            If \"symbols\" is not sent:\n\n                {\n                \"assets\":[\n                    {\n                        \"baseAsset\": \n                        {\n                        \"asset\": \"BTC\",\n                        \"borrowEnabled\": true,\n                        \"borrowed\": \"0.00000000\",\n                        \"free\": \"0.00000000\",\n                        \"interest\": \"0.00000000\",\n                        \"locked\": \"0.00000000\",\n                        \"netAsset\": \"0.00000000\",\n                        \"netAssetOfBtc\": \"0.00000000\",\n                        \"repayEnabled\": true,\n                        \"totalAsset\": \"0.00000000\"\n                        },\n                        \"quoteAsset\": \n                        {\n                        \"asset\": \"USDT\",\n                        \"borrowEnabled\": true,\n                        \"borrowed\": \"0.00000000\",\n                        \"free\": \"0.00000000\",\n                        \"interest\": \"0.00000000\",\n                        \"locked\": \"0.00000000\",\n                        \"netAsset\": \"0.00000000\",\n                        \"netAssetOfBtc\": \"0.00000000\",\n                        \"repayEnabled\": true,\n                        \"totalAsset\": \"0.00000000\"\n                        },\n                        \"symbol\": \"BTCUSDT\"\n                        \"isolatedCreated\": true, \n                    ""    \"marginLevel\": \"0.00000000\", \n                        \"marginLevelStatus\": \"EXCESSIVE\", // \"EXCESSIVE\", \"NORMAL\", \"MARGIN_CALL\", \"PRE_LIQUIDATION\", \"\n                                              FORCE_LIQUIDATION\"\n                        \"marginRatio\": \"0.00000000\",\n                        \"indexPrice\": \"10000.00000000\"\n                        \"liquidatePrice\": \"1000.00000000\",\n                        \"liquidateRate\": \"1.00000000\"\n                        \"tradeEnabled\": true\n                    }\n                    ],\n                    \"totalAssetOfBtc\": \"0.00000000\",\n                    \"totalLiabilityOfBtc\": \"0.00000000\",\n                    \"totalNetAssetOfBtc\": \"0.00000000\" \n                }\n\n            If \"symbols\" is sent:\n\n                {\n                \"assets\":[\n                    {\n                        \"baseAsset\": \n                        {\n                        \"asset\": \"BTC\",\n                        \"borrowEnabled\": true,\n                        \"borrowed\": \"0.00000000\",\n                        \"free\": \"0.00000000\",\n                        \"interest\": \"0.00000000\",\n                        \"locked\": \"0.00000000\",\n                        \"netAsset\": \"0.00000000\",\n                        \"netAssetOfBtc\": \"0.00000000\",\n                        \"repayEnabled\": true,\n                        \"totalAsset\": \"0.00000000\"\n                        },\n                        \"quoteAsset\": \n                        {\n                        \"asset\": \"USDT\",\n                        \"borrowEnabled\": true,\n                        \"borrowed\": \"0.00000000\",\n                        \"free\": \"0.00000000\",\n                        \"interest\": \"0.00000000\",\n                        \"locked\": \"0.00000000\",\n                        \"netAsset\": \"0.00000000\",\n                        \"netAssetOfBtc\": \"0.00000""000\",\n                        \"repayEnabled\": true,\n                        \"totalAsset\": \"0.00000000\"\n                        },\n                        \"symbol\": \"BTCUSDT\"\n                        \"isolatedCreated\": true, \n                        \"marginLevel\": \"0.00000000\", \n                        \"marginLevelStatus\": \"EXCESSIVE\", // \"EXCESSIVE\", \"NORMAL\", \"MARGIN_CALL\", \"PRE_LIQUIDATION\", \"\n                                              FORCE_LIQUIDATION\"\n                        \"marginRatio\": \"0.00000000\",\n                        \"indexPrice\": \"10000.00000000\"\n                        \"liquidatePrice\": \"1000.00000000\",\n                        \"liquidateRate\": \"1.00000000\"\n                        \"tradeEnabled\": true\n                    }\n                    ]\n                }\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_183get_isolated_margin_account = {"get_isolated_margin_account", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_183get_isolated_margin_account, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_182get_isolated_margin_account};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_183get_isolated_margin_account(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_isolated_margin_account (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 3330, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 3330, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "get_isolated_margin_account", 1) < 0) __PYX_ERR(0, 3330, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_isolated_margin_account", 1, 1, 1, i); __PYX_ERR(0, 3330, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 3330, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_isolated_margin_account", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 3330, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_isolated_margin_account", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_182get_isolated_margin_account(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_182get_isolated_margin_account(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_isolated_margin_account", 0);

  /* "unicorn_binance_rest_api/manager.py":3441
 * 
 *         """
 *         return self._request_margin_api('get', 'margin/isolated/account', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_margin_asset(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3441, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3441, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 3441, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[24], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3441, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":3330
 *         return self._request_margin_api('get', 'margin/account', True, data=params)
 * 
 *     def get_isolated_margin_account(self, **params):             # <<<<<<<<<<<<<<
 *         """Query isolated margin account details
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_isolated_margin_account", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":3443
 *         return self._request_margin_api('get', 'margin/isolated/account', True, data=params)
 * 
 *     def get_margin_asset(self, **params):             # <<<<<<<<<<<<<<
 *         """Query cross-margin asset
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_185get_margin_asset(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_184get_margin_asset, "Query cross-margin asset\n\n        https://binance-docs.github.io/apidocs/spot/en/#query-margin-asset-market_data\n\n        :param asset: name of the asset\n        :type asset: str\n\n\n        .. code:: python\n\n            asset_details = client.get_margin_asset(asset='BNB')\n\n        :returns: API response\n\n        .. code-block:: python\n\n            {\n                \"assetFullName\": \"Binance Coin\",\n                \"assetName\": \"BNB\",\n                \"isBorrowable\": false,\n                \"isMortgageable\": true,\n                \"userMinBorrow\": \"0.00000000\",\n                \"userMinRepay\": \"0.00000000\"\n            }\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_185get_margin_asset = {"get_margin_asset", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_185get_margin_asset, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_184get_margin_asset};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_185get_margin_asset(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_margin_asset (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 3443, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 3443, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "get_margin_asset", 1) < 0) __PYX_ERR(0, 3443, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_margin_asset", 1, 1, 1, i); __PYX_ERR(0, 3443, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 3443, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_margin_asset", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 3443, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_margin_asset", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_184get_margin_asset(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_184get_margin_asset(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_margin_asset", 0);

  /* "unicorn_binance_rest_api/manager.py":3472
 * 
 *         """
 *         return self._request_margin_api('get', 'margin/asset', data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_margin_symbol(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3472, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3472, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 3472, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[25], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3472, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":3443
 *         return self._request_margin_api('get', 'margin/isolated/account', True, data=params)
 * 
 *     def get_margin_asset(self, **params):             # <<<<<<<<<<<<<<
 *         """Query cross-margin asset
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_margin_asset", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":3474
 *         return self._request_margin_api('get', 'margin/asset', data=params)
 * 
 *     def get_margin_symbol(self, **params):             # <<<<<<<<<<<<<<
 *         """Query cross-margin symbol info
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_187get_margin_symbol(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_186get_margin_symbol, "Query cross-margin symbol info\n\n        https://binance-docs.github.io/apidocs/spot/en/#query-cross-margin-pair-market_data\n\n        :param symbol: name of the symbol pair\n        :type symbol: str\n\n        .. code:: python\n\n            pair_details = client.get_margin_symbol(symbol='BTCUSDT')\n\n        :returns: API response\n\n        .. code-block:: python\n\n            {\n                \"id\":323355778339572400,\n                \"symbol\":\"BTCUSDT\",\n                \"base\":\"BTC\",\n                \"quote\":\"USDT\",\n                \"isMarginTrade\":true,\n                \"isBuyAllowed\":true,\n                \"isSellAllowed\":true\n            }\n\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_187get_margin_symbol = {"get_margin_symbol", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_187get_margin_symbol, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_186get_margin_symbol};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_187get_margin_symbol(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_margin_symbol (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 3474, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 3474, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "get_margin_symbol", 1) < 0) __PYX_ERR(0, 3474, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_margin_symbol", 1, 1, 1, i); __PYX_ERR(0, 3474, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 3474, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_margin_symbol", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 3474, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_margin_symbol", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_186get_margin_symbol(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_186get_margin_symbol(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_margin_symbol", 0);

  /* "unicorn_binance_rest_api/manager.py":3504
 * 
 *         """
 *         return self._request_margin_api('get', 'margin/pair', data=params)             # <<<<<<<<<<<<<<
 * 
 *     def create_isolated_margin_account(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3504, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3504, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 3504, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[26], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3504, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":3474
 *         return self._request_margin_api('get', 'margin/asset', data=params)
 * 
 *     def get_margin_symbol(self, **params):             # <<<<<<<<<<<<<<
 *         """Query cross-margin symbol info
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_margin_symbol", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":3506
 *         return self._request_margin_api('get', 'margin/pair', data=params)
 * 
 *     def create_isolated_margin_account(self, **params):             # <<<<<<<<<<<<<<
 *         """Create isolated margin account for symbol
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_189create_isolated_margin_account(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_188create_isolated_margin_account, "Create isolated margin account for symbol\n\n        https://binance-docs.github.io/apidocs/spot/en/#create-isolated-margin-account-margin\n\n        :param base: Base asset of symbol\n        :type base: str\n        :param quote: Quote asset of symbol\n        :type quote: str\n\n        .. code:: python\n\n            pair_details = client.create_isolated_margin_account(base='USDT', quote='BTC')\n\n        :returns: API response\n\n        .. code-block:: python\n\n            {\n                \"success\": true,\n                \"symbol\": \"BTCUSDT\"\n            }\n\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_189create_isolated_margin_account = {"create_isolated_margin_account", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_189create_isolated_margin_account, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_188create_isolated_margin_account};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_189create_isolated_margin_account(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("create_isolated_margin_account (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 3506, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 3506, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "create_isolated_margin_account", 1) < 0) __PYX_ERR(0, 3506, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("create_isolated_margin_account", 1, 1, 1, i); __PYX_ERR(0, 3506, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 3506, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("create_isolated_margin_account", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 3506, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.create_isolated_margin_account", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_188create_isolated_margin_account(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_188create_isolated_margin_account(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("create_isolated_margin_account", 0);

  /* "unicorn_binance_rest_api/manager.py":3533
 * 
 *         """
 *         return self._request_margin_api('post', 'margin/isolated/create', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_isolated_margin_symbol(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3533, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3533, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_signed, Py_True) < 0) __PYX_ERR(0, 3533, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 3533, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[27], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3533, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":3506
 *         return self._request_margin_api('get', 'margin/pair', data=params)
 * 
 *     def create_isolated_margin_account(self, **params):             # <<<<<<<<<<<<<<
 *         """Create isolated margin account for symbol
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.create_isolated_margin_account", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":3535
 *         return self._request_margin_api('post', 'margin/isolated/create', signed=True, data=params)
 * 
 *     def get_isolated_margin_symbol(self, **params):             # <<<<<<<<<<<<<<
 *         """Query isolated margin symbol info
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_191get_isolated_margin_symbol(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_190get_isolated_margin_symbol, "Query isolated margin symbol info\n\n        https://binance-docs.github.io/apidocs/spot/en/#query-isolated-margin-symbol-user_data\n\n        :param symbol: name of the symbol pair\n        :type symbol: str\n\n        .. code:: python\n\n            pair_details = client.get_isolated_margin_symbol(symbol='BTCUSDT')\n\n        :returns: API response\n\n        .. code-block:: python\n\n            {\n            \"symbol\":\"BTCUSDT\",\n            \"base\":\"BTC\",\n            \"quote\":\"USDT\",\n            \"isMarginTrade\":true,\n            \"isBuyAllowed\":true,\n            \"isSellAllowed\":true      \n            }\n\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_191get_isolated_margin_symbol = {"get_isolated_margin_symbol", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_191get_isolated_margin_symbol, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_190get_isolated_margin_symbol};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_191get_isolated_margin_symbol(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_isolated_margin_symbol (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 3535, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 3535, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "get_isolated_margin_symbol", 1) < 0) __PYX_ERR(0, 3535, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_isolated_margin_symbol", 1, 1, 1, i); __PYX_ERR(0, 3535, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 3535, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_isolated_margin_symbol", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 3535, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_isolated_margin_symbol", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_190get_isolated_margin_symbol(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_190get_isolated_margin_symbol(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_isolated_margin_symbol", 0);

  /* "unicorn_binance_rest_api/manager.py":3564
 * 
 *         """
 *         return self._request_margin_api('get', 'margin/isolated/pair', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_all_isolated_margin_symbols(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3564, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3564, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_signed, Py_True) < 0) __PYX_ERR(0, 3564, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 3564, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[28], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3564, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":3535
 *         return self._request_margin_api('post', 'margin/isolated/create', signed=True, data=params)
 * 
 *     def get_isolated_margin_symbol(self, **params):             # <<<<<<<<<<<<<<
 *         """Query isolated margin symbol info
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_isolated_margin_symbol", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":3566
 *         return self._request_margin_api('get', 'margin/isolated/pair', signed=True, data=params)
 * 
 *     def get_all_isolated_margin_symbols(self, **params):             # <<<<<<<<<<<<<<
 *         """Query isolated margin symbol info for all pairs
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_193get_all_isolated_margin_symbols(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_192get_all_isolated_margin_symbols, "Query isolated margin symbol info for all pairs\n\n        https://binance-docs.github.io/apidocs/spot/en/#get-all-isolated-margin-symbol-user_data\n\n        .. code:: python\n\n            pair_details = client.get_all_isolated_margin_symbols()\n\n        :returns: API response\n\n        .. code-block:: python\n\n            [\n                {\n                    \"base\": \"BNB\",\n                    \"isBuyAllowed\": true,\n                    \"isMarginTrade\": true,\n                    \"isSellAllowed\": true,\n                    \"quote\": \"BTC\",\n                    \"symbol\": \"BNBBTC\"     \n                },\n                {\n                    \"base\": \"TRX\",\n                    \"isBuyAllowed\": true,\n                    \"isMarginTrade\": true,\n                    \"isSellAllowed\": true,\n                    \"quote\": \"BTC\",\n                    \"symbol\": \"TRXBTC\"    \n                }\n            ]\n\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_193get_all_isolated_margin_symbols = {"get_all_isolated_margin_symbols", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_193get_all_isolated_margin_symbols, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_192get_all_isolated_margin_symbols};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_193get_all_isolated_margin_symbols(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_all_isolated_margin_symbols (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 3566, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 3566, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "get_all_isolated_margin_symbols", 1) < 0) __PYX_ERR(0, 3566, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_all_isolated_margin_symbols", 1, 1, 1, i); __PYX_ERR(0, 3566, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 3566, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_all_isolated_margin_symbols", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 3566, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_all_isolated_margin_symbols", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_192get_all_isolated_margin_symbols(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_192get_all_isolated_margin_symbols(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_all_isolated_margin_symbols", 0);

  /* "unicorn_binance_rest_api/manager.py":3602
 * 
 *         """
 *         return self._request_margin_api('get', 'margin/isolated/allPairs', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def toggle_bnb_burn_spot_margin(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3602, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3602, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_signed, Py_True) < 0) __PYX_ERR(0, 3602, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 3602, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[29], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3602, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":3566
 *         return self._request_margin_api('get', 'margin/isolated/pair', signed=True, data=params)
 * 
 *     def get_all_isolated_margin_symbols(self, **params):             # <<<<<<<<<<<<<<
 *         """Query isolated margin symbol info for all pairs
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_all_isolated_margin_symbols", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":3604
 *         return self._request_margin_api('get', 'margin/isolated/allPairs', signed=True, data=params)
 * 
 *     def toggle_bnb_burn_spot_margin(self, **params):             # <<<<<<<<<<<<<<
 *         """Toggle BNB Burn On Spot Trade And Margin Interest
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_195toggle_bnb_burn_spot_margin(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_194toggle_bnb_burn_spot_margin, "Toggle BNB Burn On Spot Trade And Margin Interest\n\n        https://binance-docs.github.io/apidocs/spot/en/#toggle-bnb-burn-on-spot-trade-and-margin-interest-user_data\n\n        :param spotBNBBurn: Determines whether to use BNB to pay for trading fees on SPOT\n        :type spotBNBBurn: bool\n        :param interestBNBBurn: Determines whether to use BNB to pay for margin loan's interest\n        :type interestBNBBurn: bool\n\n        .. code:: python\n\n            response = client.toggle_bnb_burn_spot_margin()\n\n        :returns: API response\n\n        .. code-block:: python\n\n            {\n               \"spotBNBBurn\":true,\n               \"interestBNBBurn\": false\n            }\n\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_195toggle_bnb_burn_spot_margin = {"toggle_bnb_burn_spot_margin", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_195toggle_bnb_burn_spot_margin, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_194toggle_bnb_burn_spot_margin};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_195toggle_bnb_burn_spot_margin(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("toggle_bnb_burn_spot_margin (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 3604, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 3604, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "toggle_bnb_burn_spot_margin", 1) < 0) __PYX_ERR(0, 3604, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("toggle_bnb_burn_spot_margin", 1, 1, 1, i); __PYX_ERR(0, 3604, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 3604, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("toggle_bnb_burn_spot_margin", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 3604, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.toggle_bnb_burn_spot_margin", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_194toggle_bnb_burn_spot_margin(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_194toggle_bnb_burn_spot_margin(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("toggle_bnb_burn_spot_margin", 0);

  /* "unicorn_binance_rest_api/manager.py":3631
 * 
 *         """
 *         return self._request_margin_api('post', 'bnbBurn', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_bnb_burn_spot_margin(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3631, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3631, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_signed, Py_True) < 0) __PYX_ERR(0, 3631, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 3631, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[30], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3631, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":3604
 *         return self._request_margin_api('get', 'margin/isolated/allPairs', signed=True, data=params)
 * 
 *     def toggle_bnb_burn_spot_margin(self, **params):             # <<<<<<<<<<<<<<
 *         """Toggle BNB Burn On Spot Trade And Margin Interest
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.toggle_bnb_burn_spot_margin", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":3633
 *         return self._request_margin_api('post', 'bnbBurn', signed=True, data=params)
 * 
 *     def get_bnb_burn_spot_margin(self, **params):             # <<<<<<<<<<<<<<
 *         """Get BNB Burn Status
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_197get_bnb_burn_spot_margin(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_196get_bnb_burn_spot_margin, "Get BNB Burn Status\n\n        https://binance-docs.github.io/apidocs/spot/en/#get-bnb-burn-status-user_data\n\n        .. code:: python\n\n            status = client.get_bnb_burn_spot_margin()\n\n        :returns: API response\n\n        .. code-block:: python\n\n            {\n               \"spotBNBBurn\":true,\n               \"interestBNBBurn\": false\n            }\n\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_197get_bnb_burn_spot_margin = {"get_bnb_burn_spot_margin", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_197get_bnb_burn_spot_margin, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_196get_bnb_burn_spot_margin};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_197get_bnb_burn_spot_margin(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_bnb_burn_spot_margin (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 3633, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 3633, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "get_bnb_burn_spot_margin", 1) < 0) __PYX_ERR(0, 3633, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_bnb_burn_spot_margin", 1, 1, 1, i); __PYX_ERR(0, 3633, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 3633, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_bnb_burn_spot_margin", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 3633, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_bnb_burn_spot_margin", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_196get_bnb_burn_spot_margin(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_196get_bnb_burn_spot_margin(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_bnb_burn_spot_margin", 0);

  /* "unicorn_binance_rest_api/manager.py":3655
 * 
 *         """
 *         return self._request_margin_api('get', 'bnbBurn', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_margin_price_index(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3655, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3655, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_signed, Py_True) < 0) __PYX_ERR(0, 3655, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 3655, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[31], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3655, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":3633
 *         return self._request_margin_api('post', 'bnbBurn', signed=True, data=params)
 * 
 *     def get_bnb_burn_spot_margin(self, **params):             # <<<<<<<<<<<<<<
 *         """Get BNB Burn Status
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_bnb_burn_spot_margin", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":3657
 *         return self._request_margin_api('get', 'bnbBurn', signed=True, data=params)
 * 
 *     def get_margin_price_index(self, **params):             # <<<<<<<<<<<<<<
 *         """Query margin priceIndex
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_199get_margin_price_index(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_198get_margin_price_index, "Query margin priceIndex\n\n        https://binance-docs.github.io/apidocs/spot/en/#query-margin-priceindex-market_data\n\n        :param symbol: name of the symbol pair\n        :type symbol: str\n\n        .. code:: python\n\n            price_index_details = client.get_margin_price_index(symbol='BTCUSDT')\n\n        :returns: API response\n\n        .. code-block:: python\n\n            {\n                \"calcTime\": 1562046418000,\n                \"price\": \"0.00333930\",\n                \"symbol\": \"BNBBTC\"\n            }\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_199get_margin_price_index = {"get_margin_price_index", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_199get_margin_price_index, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_198get_margin_price_index};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_199get_margin_price_index(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_margin_price_index (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 3657, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 3657, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "get_margin_price_index", 1) < 0) __PYX_ERR(0, 3657, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_margin_price_index", 1, 1, 1, i); __PYX_ERR(0, 3657, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 3657, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_margin_price_index", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 3657, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_margin_price_index", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_198get_margin_price_index(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_198get_margin_price_index(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_margin_price_index", 0);

  /* "unicorn_binance_rest_api/manager.py":3682
 * 
 *         """
 *         return self._request_margin_api('get', 'margin/priceIndex', data=params)             # <<<<<<<<<<<<<<
 * 
 *     def transfer_margin_to_spot(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3682, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3682, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 3682, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[32], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3682, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":3657
 *         return self._request_margin_api('get', 'bnbBurn', signed=True, data=params)
 * 
 *     def get_margin_price_index(self, **params):             # <<<<<<<<<<<<<<
 *         """Query margin priceIndex
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_margin_price_index", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":3684
 *         return self._request_margin_api('get', 'margin/priceIndex', data=params)
 * 
 *     def transfer_margin_to_spot(self, **params):             # <<<<<<<<<<<<<<
 *         """Execute transfer between cross-margin account and spot account.
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_201transfer_margin_to_spot(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_200transfer_margin_to_spot, "Execute transfer between cross-margin account and spot account.\n\n        https://binance-docs.github.io/apidocs/spot/en/#cross-margin-account-transfer-margin\n\n        :param asset: name of the asset\n        :type asset: str\n        :param amount: amount to transfer\n        :type amount: str\n        :param recvWindow: the number of milliseconds the request is valid for\n        :type recvWindow: int\n\n\n        .. code:: python\n\n            transfer = client.transfer_margin_to_spot(asset='BTC', amount='1.1')\n\n        :returns: API response\n\n        .. code-block:: python\n\n            {\n                \"tranId\": 100000001\n            }\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_201transfer_margin_to_spot = {"transfer_margin_to_spot", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_201transfer_margin_to_spot, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_200transfer_margin_to_spot};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_201transfer_margin_to_spot(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("transfer_margin_to_spot (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 3684, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 3684, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "transfer_margin_to_spot", 1) < 0) __PYX_ERR(0, 3684, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("transfer_margin_to_spot", 1, 1, 1, i); __PYX_ERR(0, 3684, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 3684, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("transfer_margin_to_spot", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 3684, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.transfer_margin_to_spot", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_200transfer_margin_to_spot(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_200transfer_margin_to_spot(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("transfer_margin_to_spot", 0);

  /* "unicorn_binance_rest_api/manager.py":3712
 * 
 *         """
 *         params['type'] = 2             # <<<<<<<<<<<<<<
 *         return self._request_margin_api('post', 'margin/transfer', signed=True, data=params)
 * 
*/
  if (unlikely((PyDict_SetItem(__pyx_v_params, __pyx_mstate_global->__pyx_n_u_type, __pyx_mstate_global->__pyx_int_2) < 0))) __PYX_ERR(0, 3712, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":3713
 *         """
 *         params['type'] = 2
 *         return self._request_margin_api('post', 'margin/transfer', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def transfer_spot_to_margin(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3713, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3713, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_signed, Py_True) < 0) __PYX_ERR(0, 3713, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 3713, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[33], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3713, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":3684
 *         return self._request_margin_api('get', 'margin/priceIndex', data=params)
 * 
 *     def transfer_margin_to_spot(self, **params):             # <<<<<<<<<<<<<<
 *         """Execute transfer between cross-margin account and spot account.
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.transfer_margin_to_spot", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":3715
 *         return self._request_margin_api('post', 'margin/transfer', signed=True, data=params)
 * 
 *     def transfer_spot_to_margin(self, **params):             # <<<<<<<<<<<<<<
 *         """Execute transfer between spot account and cross-margin account.
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_203transfer_spot_to_margin(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_202transfer_spot_to_margin, "Execute transfer between spot account and cross-margin account.\n\n        https://binance-docs.github.io/apidocs/spot/en/#cross-margin-account-transfer-margin\n\n        :param asset: name of the asset\n        :type asset: str\n        :param amount: amount to transfer\n        :type amount: str\n        :param recvWindow: the number of milliseconds the request is valid for\n        :type recvWindow: int\n\n\n        .. code:: python\n\n            transfer = client.transfer_spot_to_margin(asset='BTC', amount='1.1')\n\n        :returns: API response\n\n        .. code-block:: python\n\n            {\n                \"tranId\": 100000001\n            }\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_203transfer_spot_to_margin = {"transfer_spot_to_margin", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_203transfer_spot_to_margin, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_202transfer_spot_to_margin};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_203transfer_spot_to_margin(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("transfer_spot_to_margin (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 3715, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 3715, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "transfer_spot_to_margin", 1) < 0) __PYX_ERR(0, 3715, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("transfer_spot_to_margin", 1, 1, 1, i); __PYX_ERR(0, 3715, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 3715, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("transfer_spot_to_margin", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 3715, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.transfer_spot_to_margin", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_202transfer_spot_to_margin(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_202transfer_spot_to_margin(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("transfer_spot_to_margin", 0);

  /* "unicorn_binance_rest_api/manager.py":3743
 * 
 *         """
 *         params['type'] = 1             # <<<<<<<<<<<<<<
 *         return self._request_margin_api('post', 'margin/transfer', signed=True, data=params)
 * 
*/
  if (unlikely((PyDict_SetItem(__pyx_v_params, __pyx_mstate_global->__pyx_n_u_type, __pyx_mstate_global->__pyx_int_1) < 0))) __PYX_ERR(0, 3743, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":3744
 *         """
 *         params['type'] = 1
 *         return self._request_margin_api('post', 'margin/transfer', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def transfer_isolated_margin_to_spot(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3744, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3744, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_signed, Py_True) < 0) __PYX_ERR(0, 3744, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 3744, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[33], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3744, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":3715
 *         return self._request_margin_api('post', 'margin/transfer', signed=True, data=params)
 * 
 *     def transfer_spot_to_margin(self, **params):             # <<<<<<<<<<<<<<
 *         """Execute transfer between spot account and cross-margin account.
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.transfer_spot_to_margin", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":3746
 *         return self._request_margin_api('post', 'margin/transfer', signed=True, data=params)
 * 
 *     def transfer_isolated_margin_to_spot(self, **params):             # <<<<<<<<<<<<<<
 *         """Execute transfer between isolated margin account and spot account.
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_205transfer_isolated_margin_to_spot(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_204transfer_isolated_margin_to_spot, "Execute transfer between isolated margin account and spot account.\n\n        https://binance-docs.github.io/apidocs/spot/en/#isolated-margin-account-transfer-margin\n\n        :param asset: name of the asset\n        :type asset: str\n        :param symbol: pair symbol\n        :type symbol: str\n        :param amount: amount to transfer\n        :type amount: str\n        :param recvWindow: the number of milliseconds the request is valid for\n        :type recvWindow: int\n\n\n        .. code:: python\n\n            transfer = client.transfer_isolated_margin_to_spot(asset='BTC', \n                                                                symbol='ETHBTC', amount='1.1')\n\n        :returns: API response\n\n        .. code-block:: python\n\n            {\n                \"tranId\": 100000001\n            }\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_205transfer_isolated_margin_to_spot = {"transfer_isolated_margin_to_spot", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_205transfer_isolated_margin_to_spot, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_204transfer_isolated_margin_to_spot};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_205transfer_isolated_margin_to_spot(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("transfer_isolated_margin_to_spot (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 3746, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 3746, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "transfer_isolated_margin_to_spot", 1) < 0) __PYX_ERR(0, 3746, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("transfer_isolated_margin_to_spot", 1, 1, 1, i); __PYX_ERR(0, 3746, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 3746, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("transfer_isolated_margin_to_spot", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 3746, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.transfer_isolated_margin_to_spot", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_204transfer_isolated_margin_to_spot(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_204transfer_isolated_margin_to_spot(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("transfer_isolated_margin_to_spot", 0);

  /* "unicorn_binance_rest_api/manager.py":3777
 * 
 *         """
 *         params['transFrom'] = "ISOLATED_MARGIN"             # <<<<<<<<<<<<<<
 *         params['transTo'] = "SPOT"
 *         return self._request_margin_api('post', 'margin/isolated/transfer', signed=True, data=params)
*/
  if (unlikely((PyDict_SetItem(__pyx_v_params, __pyx_mstate_global->__pyx_n_u_transFrom, __pyx_mstate_global->__pyx_n_u_ISOLATED_MARGIN) < 0))) __PYX_ERR(0, 3777, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":3778
 *         """
 *         params['transFrom'] = "ISOLATED_MARGIN"
 *         params['transTo'] = "SPOT"             # <<<<<<<<<<<<<<
 *         return self._request_margin_api('post', 'margin/isolated/transfer', signed=True, data=params)
 * 
*/
  if (unlikely((PyDict_SetItem(__pyx_v_params, __pyx_mstate_global->__pyx_n_u_transTo, __pyx_mstate_global->__pyx_n_u_SPOT) < 0))) __PYX_ERR(0, 3778, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":3779
 *         params['transFrom'] = "ISOLATED_MARGIN"
 *         params['transTo'] = "SPOT"
 *         return self._request_margin_api('post', 'margin/isolated/transfer', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def transfer_spot_to_isolated_margin(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3779, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3779, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_signed, Py_True) < 0) __PYX_ERR(0, 3779, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 3779, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[34], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3779, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":3746
 *         return self._request_margin_api('post', 'margin/transfer', signed=True, data=params)
 * 
 *     def transfer_isolated_margin_to_spot(self, **params):             # <<<<<<<<<<<<<<
 *         """Execute transfer between isolated margin account and spot account.
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.transfer_isolated_margin_to_spot", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":3781
 *         return self._request_margin_api('post', 'margin/isolated/transfer', signed=True, data=params)
 * 
 *     def transfer_spot_to_isolated_margin(self, **params):             # <<<<<<<<<<<<<<
 *         """Execute transfer between spot account and isolated margin account.
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_207transfer_spot_to_isolated_margin(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_206transfer_spot_to_isolated_margin, "Execute transfer between spot account and isolated margin account.\n\n        https://binance-docs.github.io/apidocs/spot/en/#isolated-margin-account-transfer-margin\n\n        :param asset: name of the asset\n        :type asset: str\n        :param symbol: pair symbol\n        :type symbol: str\n        :param amount: amount to transfer\n        :type amount: str\n        :param recvWindow: the number of milliseconds the request is valid for\n        :type recvWindow: int\n\n\n        .. code:: python\n\n            transfer = client.transfer_spot_to_isolated_margin(asset='BTC', \n                                                                symbol='ETHBTC', amount='1.1')\n\n        :returns: API response\n\n        .. code-block:: python\n\n            {\n                \"tranId\": 100000001\n            }\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_207transfer_spot_to_isolated_margin = {"transfer_spot_to_isolated_margin", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_207transfer_spot_to_isolated_margin, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_206transfer_spot_to_isolated_margin};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_207transfer_spot_to_isolated_margin(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("transfer_spot_to_isolated_margin (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 3781, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 3781, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "transfer_spot_to_isolated_margin", 1) < 0) __PYX_ERR(0, 3781, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("transfer_spot_to_isolated_margin", 1, 1, 1, i); __PYX_ERR(0, 3781, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 3781, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("transfer_spot_to_isolated_margin", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 3781, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.transfer_spot_to_isolated_margin", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_206transfer_spot_to_isolated_margin(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_206transfer_spot_to_isolated_margin(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("transfer_spot_to_isolated_margin", 0);

  /* "unicorn_binance_rest_api/manager.py":3812
 * 
 *         """
 *         params['transFrom'] = "SPOT"             # <<<<<<<<<<<<<<
 *         params['transTo'] = "ISOLATED_MARGIN"
 *         return self._request_margin_api('post', 'margin/isolated/transfer', signed=True, data=params)
*/
  if (unlikely((PyDict_SetItem(__pyx_v_params, __pyx_mstate_global->__pyx_n_u_transFrom, __pyx_mstate_global->__pyx_n_u_SPOT) < 0))) __PYX_ERR(0, 3812, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":3813
 *         """
 *         params['transFrom'] = "SPOT"
 *         params['transTo'] = "ISOLATED_MARGIN"             # <<<<<<<<<<<<<<
 *         return self._request_margin_api('post', 'margin/isolated/transfer', signed=True, data=params)
 * 
*/
  if (unlikely((PyDict_SetItem(__pyx_v_params, __pyx_mstate_global->__pyx_n_u_transTo, __pyx_mstate_global->__pyx_n_u_ISOLATED_MARGIN) < 0))) __PYX_ERR(0, 3813, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":3814
 *         params['transFrom'] = "SPOT"
 *         params['transTo'] = "ISOLATED_MARGIN"
 *         return self._request_margin_api('post', 'margin/isolated/transfer', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def create_margin_loan(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3814, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3814, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_signed, Py_True) < 0) __PYX_ERR(0, 3814, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 3814, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[34], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3814, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":3781
 *         return self._request_margin_api('post', 'margin/isolated/transfer', signed=True, data=params)
 * 
 *     def transfer_spot_to_isolated_margin(self, **params):             # <<<<<<<<<<<<<<
 *         """Execute transfer between spot account and isolated margin account.
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.transfer_spot_to_isolated_margin", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":3816
 *         return self._request_margin_api('post', 'margin/isolated/transfer', signed=True, data=params)
 * 
 *     def create_margin_loan(self, **params):             # <<<<<<<<<<<<<<
 *         """Apply for a loan in cross-margin or isolated-margin account.
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_209create_margin_loan(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_208create_margin_loan, "Apply for a loan in cross-margin or isolated-margin account.\n\n        https://binance-docs.github.io/apidocs/spot/en/#margin-account-borrow-margin\n\n        :param asset: name of the asset\n        :type asset: str\n        :param amount: amount to transfer\n        :type amount: str\n        :param isIsolated: set to 'TRUE' for isolated margin (default 'FALSE')\n        :type isIsolated: str\n        :param symbol: Isolated margin symbol (default blank for cross-margin)\n        :type symbol: str\n        :param recvWindow: the number of milliseconds the request is valid for\n        :type recvWindow: int\n\n\n        .. code:: python\n\n            transaction = client.margin_create_loan(asset='BTC', amount='1.1')\n\n            transaction = client.margin_create_loan(asset='BTC', amount='1.1', \n                                                    isIsolated='TRUE', symbol='ETHBTC')\n\n        :returns: API response\n\n        .. code-block:: python\n\n            {\n                \"tranId\": 100000001\n            }\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_209create_margin_loan = {"create_margin_loan", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_209create_margin_loan, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_208create_margin_loan};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_209create_margin_loan(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("create_margin_loan (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 3816, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 3816, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "create_margin_loan", 1) < 0) __PYX_ERR(0, 3816, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("create_margin_loan", 1, 1, 1, i); __PYX_ERR(0, 3816, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 3816, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("create_margin_loan", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 3816, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.create_margin_loan", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_208create_margin_loan(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_208create_margin_loan(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("create_margin_loan", 0);

  /* "unicorn_binance_rest_api/manager.py":3851
 * 
 *         """
 *         return self._request_margin_api('post', 'margin/loan', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def repay_margin_loan(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3851, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3851, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_signed, Py_True) < 0) __PYX_ERR(0, 3851, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 3851, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[35], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3851, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":3816
 *         return self._request_margin_api('post', 'margin/isolated/transfer', signed=True, data=params)
 * 
 *     def create_margin_loan(self, **params):             # <<<<<<<<<<<<<<
 *         """Apply for a loan in cross-margin or isolated-margin account.
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.create_margin_loan", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":3853
 *         return self._request_margin_api('post', 'margin/loan', signed=True, data=params)
 * 
 *     def repay_margin_loan(self, **params):             # <<<<<<<<<<<<<<
 *         """Repay loan in cross-margin or isolated-margin account.
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_211repay_margin_loan(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_210repay_margin_loan, "Repay loan in cross-margin or isolated-margin account.\n\n        If amount is more than the amount borrowed, the full loan will be repaid. \n\n        https://binance-docs.github.io/apidocs/spot/en/#margin-account-repay-margin\n\n        :param asset: name of the asset\n        :type asset: str\n        :param amount: amount to transfer\n        :type amount: str\n        :param isIsolated: set to 'TRUE' for isolated margin (default 'FALSE')\n        :type isIsolated: str\n        :param symbol: Isolated margin symbol (default blank for cross-margin)\n        :type symbol: str\n        :param recvWindow: the number of milliseconds the request is valid for\n        :type recvWindow: int\n\n\n        .. code:: python\n\n            transaction = client.margin_repay_loan(asset='BTC', amount='1.1')\n\n            transaction = client.margin_repay_loan(asset='BTC', amount='1.1', \n                                                    isIsolated='TRUE', symbol='ETHBTC')\n\n        :returns: API response\n\n        .. code-block:: python\n\n            {\n                \"tranId\": 100000001\n            }\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_211repay_margin_loan = {"repay_margin_loan", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_211repay_margin_loan, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_210repay_margin_loan};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_211repay_margin_loan(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("repay_margin_loan (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 3853, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 3853, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "repay_margin_loan", 1) < 0) __PYX_ERR(0, 3853, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("repay_margin_loan", 1, 1, 1, i); __PYX_ERR(0, 3853, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 3853, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("repay_margin_loan", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 3853, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.repay_margin_loan", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_210repay_margin_loan(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_210repay_margin_loan(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("repay_margin_loan", 0);

  /* "unicorn_binance_rest_api/manager.py":3890
 * 
 *         """
 *         return self._request_margin_api('post', 'margin/repay', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     # Margin OCO
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3890, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3890, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_signed, Py_True) < 0) __PYX_ERR(0, 3890, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 3890, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[36], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3890, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":3853
 *         return self._request_margin_api('post', 'margin/loan', signed=True, data=params)
 * 
 *     def repay_margin_loan(self, **params):             # <<<<<<<<<<<<<<
 *         """Repay loan in cross-margin or isolated-margin account.
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.repay_margin_loan", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":3893
 * 
 *     # Margin OCO
 *     def create_margin_oco_order(self, **params):             # <<<<<<<<<<<<<<
 *         """Post a new OCO trade for margin account.
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_213create_margin_oco_order(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_212create_margin_oco_order, "Post a new OCO trade for margin account.\n\n        https://binance-docs.github.io/apidocs/spot/en/#margin-account-new-oco-trade\n\n\n        :param symbol: required\n        :type symbol: str\n        :param isIsolated: for isolated margin or not, \"TRUE\", \"FALSE\"\357\274\214default \"FALSE\"\n        :type symbol: str\n        :param listClientOrderId: A unique id for the list order. Automatically generated if not sent.\n        :type listClientOrderId: str\n        :param side: required\n        :type side: str\n        :param quantity: required\n        :type quantity: decimal\n        :param limitClientOrderId: A unique id for the limit order. Automatically generated if not sent.\n        :type limitClientOrderId: str\n        :param price: required\n        :type price: str\n        :param limitIcebergQty: Used to make the LIMIT_MAKER leg an iceberg order.\n        :type limitIcebergQty: decimal\n        :param stopClientOrderId: A unique Id for the stop loss/stop loss limit leg. Automatically generated if not\n                                  sent.\n        :type stopClientOrderId: str\n        :param stopPrice: required\n        :type stopPrice: str\n        :param stopLimitPrice: If provided, stopLimitTimeInForce is required.\n        :type stopLimitPrice: str\n        :param stopIcebergQty: Used with STOP_LOSS_LIMIT leg to make an iceberg order.\n        :type stopIcebergQty: decimal\n        :param stopLimitTimeInForce: Valid values are GTC/FOK/IOC.\n        :type stopLimitTimeInForce: str\n        :param newOrderRespType: Set the response JSON. ACK, RESULT, or FULL; default: RESULT.\n        :type newOrderRespType: str\n        :param sideEffectType: NO_SIDE_EFFECT, MARGIN_BUY, AUTO_REPAY; default NO_SIDE_EFFECT.\n        :type sideEffectType: str\n        :param recvWindow: the number of milliseconds the request is valid for\n        :type recvWindow: int\n\n        :returns: API response\n\n        .. code-block:: python\n\n            {\n         ""       \"orderListId\": 0,\n                \"contingencyType\": \"OCO\",\n                \"listStatusType\": \"EXEC_STARTED\",\n                \"listOrderStatus\": \"EXECUTING\",\n                \"listClientOrderId\": \"JYVpp3F0f5CAG15DhtrqLp\",\n                \"transactionTime\": 1563417480525,\n                \"symbol\": \"LTCBTC\",\n                \"marginBuyBorrowAmount\": \"5\",       // will not return if no margin trade happens\n                \"marginBuyBorrowAsset\": \"BTC\",    // will not return if no margin trade happens\n                \"isIsolated\": false,       // if isolated margin\n                \"orders\": [\n                    {\n                        \"symbol\": \"LTCBTC\",\n                        \"orderId\": 2,\n                        \"clientOrderId\": \"Kk7sqHb9J6mJWTMDVW7Vos\"\n                    },\n                    {\n                        \"symbol\": \"LTCBTC\",\n                        \"orderId\": 3,\n                        \"clientOrderId\": \"xTXKaGYd4bluPVp78IVRvl\"\n                    }\n                ],\n                \"orderReports\": [\n                    {\n                        \"symbol\": \"LTCBTC\",\n                        \"orderId\": 2,\n                        \"orderListId\": 0,\n                        \"clientOrderId\": \"Kk7sqHb9J6mJWTMDVW7Vos\",\n                        \"transactTime\": 1563417480525,\n                        \"price\": \"0.000000\",\n                        \"origQty\": \"0.624363\",\n                        \"executedQty\": \"0.000000\",\n                        \"cummulativeQuoteQty\": \"0.000000\",\n                        \"status\": \"NEW\",\n                        \"timeInForce\": \"GTC\",\n                        \"type\": \"STOP_LOSS\",\n                        \"side\": \"BUY\",\n                        \"stopPrice\": \"0.960664\"\n                    },\n                    {\n                        \"symbol\": \"LTCBTC\",\n                        \"orde""rId\": 3,\n                        \"orderListId\": 0,\n                        \"clientOrderId\": \"xTXKaGYd4bluPVp78IVRvl\",\n                        \"transactTime\": 1563417480525,\n                        \"price\": \"0.036435\",\n                        \"origQty\": \"0.624363\",\n                        \"executedQty\": \"0.000000\",\n                        \"cummulativeQuoteQty\": \"0.000000\",\n                        \"status\": \"NEW\",\n                        \"timeInForce\": \"GTC\",\n                        \"type\": \"LIMIT_MAKER\",\n                        \"side\": \"BUY\"\n                    }\n                ]\n            }\n\n        :raises: BinanceRequestException, BinanceAPIException, BinanceOrderException, BinanceOrderMinAmountException,\n            BinanceOrderMinPriceException, BinanceOrderMinTotalException, BinanceOrderUnknownSymbolException,\n            BinanceOrderInactiveSymbolException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_213create_margin_oco_order = {"create_margin_oco_order", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_213create_margin_oco_order, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_212create_margin_oco_order};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_213create_margin_oco_order(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("create_margin_oco_order (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 3893, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 3893, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "create_margin_oco_order", 1) < 0) __PYX_ERR(0, 3893, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("create_margin_oco_order", 1, 1, 1, i); __PYX_ERR(0, 3893, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 3893, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("create_margin_oco_order", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 3893, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.create_margin_oco_order", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_212create_margin_oco_order(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_212create_margin_oco_order(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("create_margin_oco_order", 0);

  /* "unicorn_binance_rest_api/manager.py":4000
 * 
 *         """
 *         return self._request_margin_api('post', 'margin/order/oco', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def cancel_margin_oco_order(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4000, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 4000, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_signed, Py_True) < 0) __PYX_ERR(0, 4000, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 4000, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[37], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4000, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":3893
 * 
 *     # Margin OCO
 *     def create_margin_oco_order(self, **params):             # <<<<<<<<<<<<<<
 *         """Post a new OCO trade for margin account.
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.create_margin_oco_order", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":4002
 *         return self._request_margin_api('post', 'margin/order/oco', signed=True, data=params)
 * 
 *     def cancel_margin_oco_order(self, **params):             # <<<<<<<<<<<<<<
 *         """Cancel an entire Order List for a margin account.
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_215cancel_margin_oco_order(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_214cancel_margin_oco_order, "Cancel an entire Order List for a margin account.\n\n        https://binance-docs.github.io/apidocs/spot/en/#margin-account-cancel-oco-trade\n\n        :param symbol: required\n        :type symbol: str\n        :param isIsolated: for isolated margin or not, \"TRUE\", \"FALSE\"\357\274\214default \"FALSE\"\n        :type symbol: str\n        :param orderListId: Either orderListId or listClientOrderId must be provided\n        :type orderListId: int\n        :param listClientOrderId: Either orderListId or listClientOrderId must be provided\n        :type listClientOrderId: str\n        :param newClientOrderId: Used to uniquely identify this cancel. Automatically generated by default.\n        :type newClientOrderId: str\n        :param recvWindow: the number of milliseconds the request is valid for\n        :type recvWindow: int\n\n        :returns: API response\n\n        .. code-block:: python\n\n            {\n                \"orderListId\": 0,\n                \"contingencyType\": \"OCO\",\n                \"listStatusType\": \"ALL_DONE\",\n                \"listOrderStatus\": \"ALL_DONE\",\n                \"listClientOrderId\": \"C3wyj4WVEktd7u9aVBRXcN\",\n                \"transactionTime\": 1574040868128,\n                \"symbol\": \"LTCBTC\",\n                \"isIsolated\": false,       // if isolated margin\n                \"orders\": [\n                    {\n                        \"symbol\": \"LTCBTC\",\n                        \"orderId\": 2,\n                        \"clientOrderId\": \"pO9ufTiFGg3nw2fOdgeOXa\"\n                    },\n                    {\n                        \"symbol\": \"LTCBTC\",\n                        \"orderId\": 3,\n                        \"clientOrderId\": \"TXOvglzXuaubXAaENpaRCB\"\n                    }\n                ],\n                \"orderReports\": [\n                    {\n                        \"symbol\": \"LTCBTC\",\n                        \"origClientOrderId\": \"pO9ufTiFGg3nw2fOdgeOXa\",\n      ""                  \"orderId\": 2,\n                        \"orderListId\": 0,\n                        \"clientOrderId\": \"unfWT8ig8i0uj6lPuYLez6\",\n                        \"price\": \"1.00000000\",\n                        \"origQty\": \"10.00000000\",\n                        \"executedQty\": \"0.00000000\",\n                        \"cummulativeQuoteQty\": \"0.00000000\",\n                        \"status\": \"CANCELED\",\n                        \"timeInForce\": \"GTC\",\n                        \"type\": \"STOP_LOSS_LIMIT\",\n                        \"side\": \"SELL\",\n                        \"stopPrice\": \"1.00000000\"\n                    },\n                    {\n                        \"symbol\": \"LTCBTC\",\n                        \"origClientOrderId\": \"TXOvglzXuaubXAaENpaRCB\",\n                        \"orderId\": 3,\n                        \"orderListId\": 0,\n                        \"clientOrderId\": \"unfWT8ig8i0uj6lPuYLez6\",\n                        \"price\": \"3.00000000\",\n                        \"origQty\": \"10.00000000\",\n                        \"executedQty\": \"0.00000000\",\n                        \"cummulativeQuoteQty\": \"0.00000000\",\n                        \"status\": \"CANCELED\",\n                        \"timeInForce\": \"GTC\",\n                        \"type\": \"LIMIT_MAKER\",\n                        \"side\": \"SELL\"\n                    }\n                ]\n            }\n\n    ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_215cancel_margin_oco_order = {"cancel_margin_oco_order", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_215cancel_margin_oco_order, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_214cancel_margin_oco_order};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_215cancel_margin_oco_order(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("cancel_margin_oco_order (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 4002, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 4002, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "cancel_margin_oco_order", 1) < 0) __PYX_ERR(0, 4002, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("cancel_margin_oco_order", 1, 1, 1, i); __PYX_ERR(0, 4002, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 4002, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("cancel_margin_oco_order", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 4002, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.cancel_margin_oco_order", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_214cancel_margin_oco_order(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_214cancel_margin_oco_order(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("cancel_margin_oco_order", 0);

  /* "unicorn_binance_rest_api/manager.py":4081
 * 
 *     """
 *         return self._request_margin_api('delete', 'margin/orderList', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_margin_oco_order(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4081, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 4081, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_signed, Py_True) < 0) __PYX_ERR(0, 4081, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 4081, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[38], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4081, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":4002
 *         return self._request_margin_api('post', 'margin/order/oco', signed=True, data=params)
 * 
 *     def cancel_margin_oco_order(self, **params):             # <<<<<<<<<<<<<<
 *         """Cancel an entire Order List for a margin account.
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.cancel_margin_oco_order", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":4083
 *         return self._request_margin_api('delete', 'margin/orderList', signed=True, data=params)
 * 
 *     def get_margin_oco_order(self, **params):             # <<<<<<<<<<<<<<
 *         """ Retrieves a specific OCO based on provided optional parameters
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_217get_margin_oco_order(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_216get_margin_oco_order, " Retrieves a specific OCO based on provided optional parameters\n\n        https://binance-docs.github.io/apidocs/spot/en/#query-margin-account-39-s-oco-user_data\n\n        :param isIsolated: for isolated margin or not, \"TRUE\", \"FALSE\"\357\274\214default \"FALSE\"\n        :type symbol: str\n        :param symbol: mandatory for isolated margin, not supported for cross margin\n        :type symbol: str\n        :param orderListId: Either orderListId or listClientOrderId must be provided\n        :type orderListId: int\n        :param listClientOrderId: Either orderListId or listClientOrderId must be provided\n        :type listClientOrderId: str\n        :param recvWindow: the number of milliseconds the request is valid for\n        :type recvWindow: int\n\n        :returns: API response\n\n        .. code-block:: python\n\n            {\n                \"orderListId\": 27,\n                \"contingencyType\": \"OCO\",\n                \"listStatusType\": \"EXEC_STARTED\",\n                \"listOrderStatus\": \"EXECUTING\",\n                \"listClientOrderId\": \"h2USkA5YQpaXHPIrkd96xE\",\n                \"transactionTime\": 1565245656253,\n                \"symbol\": \"LTCBTC\",\n                \"isIsolated\": false,       // if isolated margin\n                \"orders\": [\n                    {\n                        \"symbol\": \"LTCBTC\",\n                        \"orderId\": 4,\n                        \"clientOrderId\": \"qD1gy3kc3Gx0rihm9Y3xwS\"\n                    },\n                    {\n                        \"symbol\": \"LTCBTC\",\n                        \"orderId\": 5,\n                        \"clientOrderId\": \"ARzZ9I00CPM8i3NhmU9Ega\"\n                    }\n                ]\n            }\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_217get_margin_oco_order = {"get_margin_oco_order", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_217get_margin_oco_order, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_216get_margin_oco_order};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_217get_margin_oco_order(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_margin_oco_order (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 4083, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 4083, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "get_margin_oco_order", 1) < 0) __PYX_ERR(0, 4083, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_margin_oco_order", 1, 1, 1, i); __PYX_ERR(0, 4083, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 4083, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_margin_oco_order", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 4083, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_margin_oco_order", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_216get_margin_oco_order(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_216get_margin_oco_order(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_margin_oco_order", 0);

  /* "unicorn_binance_rest_api/manager.py":4127
 * 
 *         """
 *         return self._request_margin_api('get', 'margin/orderList', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_open_margin_oco_orders(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4127, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 4127, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_signed, Py_True) < 0) __PYX_ERR(0, 4127, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 4127, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[39], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4127, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":4083
 *         return self._request_margin_api('delete', 'margin/orderList', signed=True, data=params)
 * 
 *     def get_margin_oco_order(self, **params):             # <<<<<<<<<<<<<<
 *         """ Retrieves a specific OCO based on provided optional parameters
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_margin_oco_order", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":4129
 *         return self._request_margin_api('get', 'margin/orderList', signed=True, data=params)
 * 
 *     def get_open_margin_oco_orders(self, **params):             # <<<<<<<<<<<<<<
 *         """Retrieves open OCO trades
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_219get_open_margin_oco_orders(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_218get_open_margin_oco_orders, "Retrieves open OCO trades\n\n        https://binance-docs.github.io/apidocs/spot/en/#query-margin-account-39-s-open-oco-user_data\n\n        :param isIsolated: for isolated margin or not, \"TRUE\", \"FALSE\"\357\274\214default \"FALSE\"\n        :type symbol: str\n        :param symbol: mandatory for isolated margin, not supported for cross margin\n        :type symbol: str\n        :param fromId: If supplied, neither startTime nor endTime can be provided\n        :type fromId: int\n        :param startTime: optional\n        :type startTime: int\n        :param endTime: optional\n        :type endTime: int\n        :param limit: optional Default Value: 500; Max Value: 1000\n        :type limit: int\n        :param recvWindow: the number of milliseconds the request is valid for\n        :type recvWindow: int\n\n        :returns: API response\n\n        .. code-block:: python\n\n            [\n                {\n                    \"orderListId\": 29,\n                    \"contingencyType\": \"OCO\",\n                    \"listStatusType\": \"EXEC_STARTED\",\n                    \"listOrderStatus\": \"EXECUTING\",\n                    \"listClientOrderId\": \"amEEAXryFzFwYF1FeRpUoZ\",\n                    \"transactionTime\": 1565245913483,\n                    \"symbol\": \"LTCBTC\",\n                    \"isIsolated\": true,       // if isolated margin\n                    \"orders\": [\n                        {\n                            \"symbol\": \"LTCBTC\",\n                            \"orderId\": 4,\n                            \"clientOrderId\": \"oD7aesZqjEGlZrbtRpy5zB\"\n                        },\n                        {\n                            \"symbol\": \"LTCBTC\",\n                            \"orderId\": 5,\n                            \"clientOrderId\": \"Jr1h6xirOxgeJOUuYQS7V3\"\n                        }\n                    ]\n                },\n                {\n                    \"orderListId\": 28,\n                    \"conti""ngencyType\": \"OCO\",\n                    \"listStatusType\": \"EXEC_STARTED\",\n                    \"listOrderStatus\": \"EXECUTING\",\n                    \"listClientOrderId\": \"hG7hFNxJV6cZy3Ze4AUT4d\",\n                    \"transactionTime\": 1565245913407,\n                    \"symbol\": \"LTCBTC\",\n                    \"orders\": [\n                        {\n                            \"symbol\": \"LTCBTC\",\n                            \"orderId\": 2,\n                            \"clientOrderId\": \"j6lFOfbmFMRjTYA7rRJ0LP\"\n                        },\n                        {\n                            \"symbol\": \"LTCBTC\",\n                            \"orderId\": 3,\n                            \"clientOrderId\": \"z0KCjOdditiLS5ekAFtK81\"\n                        }\n                    ]\n                }\n            ]\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_219get_open_margin_oco_orders = {"get_open_margin_oco_orders", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_219get_open_margin_oco_orders, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_218get_open_margin_oco_orders};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_219get_open_margin_oco_orders(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_open_margin_oco_orders (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 4129, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 4129, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "get_open_margin_oco_orders", 1) < 0) __PYX_ERR(0, 4129, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_open_margin_oco_orders", 1, 1, 1, i); __PYX_ERR(0, 4129, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 4129, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_open_margin_oco_orders", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 4129, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_open_margin_oco_orders", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_218get_open_margin_oco_orders(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_218get_open_margin_oco_orders(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_open_margin_oco_orders", 0);

  /* "unicorn_binance_rest_api/manager.py":4200
 * 
 *         """
 *         return self._request_margin_api('get', 'margin/allOrderList', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def create_margin_order(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4200, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 4200, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_signed, Py_True) < 0) __PYX_ERR(0, 4200, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 4200, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[40], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4200, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":4129
 *         return self._request_margin_api('get', 'margin/orderList', signed=True, data=params)
 * 
 *     def get_open_margin_oco_orders(self, **params):             # <<<<<<<<<<<<<<
 *         """Retrieves open OCO trades
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_open_margin_oco_orders", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":4202
 *         return self._request_margin_api('get', 'margin/allOrderList', signed=True, data=params)
 * 
 *     def create_margin_order(self, **params):             # <<<<<<<<<<<<<<
 *         """Post a new order for margin account.
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_221create_margin_order(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_220create_margin_order, "Post a new order for margin account.\n\n        https://binance-docs.github.io/apidocs/spot/en/#margin-account-new-order-trade\n\n        :param symbol: required\n        :type symbol: str\n        :param isIsolated: set to 'TRUE' for isolated margin (default 'FALSE')\n        :type isIsolated: str\n        :param side: required\n        :type side: str\n        :param type: required\n        :type type: str\n        :param quantity: required\n        :type quantity: decimal\n        :param price: required\n        :type price: str\n        :param stopPrice: Used with STOP_LOSS, STOP_LOSS_LIMIT, TAKE_PROFIT, and TAKE_PROFIT_LIMIT orders.\n        :type stopPrice: str\n        :param timeInForce: required if limit order GTC,IOC,FOK\n        :type timeInForce: str\n        :param newClientOrderId: A unique id for the order. Automatically generated if not sent.\n        :type newClientOrderId: str\n        :param icebergQty: Used with LIMIT, STOP_LOSS_LIMIT, and TAKE_PROFIT_LIMIT to create an iceberg order.\n        :type icebergQty: str\n        :param newOrderRespType: Set the response JSON. ACK, RESULT, or FULL; MARKET and LIMIT order types default to\n            FULL, all other orders default to ACK.\n        :type newOrderRespType: str\n        :param recvWindow: the number of milliseconds the request is valid for\n        :type recvWindow: int\n\n        :returns: API response\n\n        Response ACK:\n\n        .. code-block:: python\n\n            {\n                \"symbol\": \"BTCUSDT\",\n                \"orderId\": 28,\n                \"clientOrderId\": \"6gCrw2kRUAF9CvJDGP16IP\",\n                \"transactTime\": 1507725176595\n            }\n\n        Response RESULT:\n\n        .. code-block:: python\n\n            {\n                \"symbol\": \"BTCUSDT\",\n                \"orderId\": 28,\n                \"clientOrderId\": \"6gCrw2kRUAF9CvJDGP16IP\",\n                \"transactTime\": 1507725176595,\n                \"price\": \"1.00000000\",""\n                \"origQty\": \"10.00000000\",\n                \"executedQty\": \"10.00000000\",\n                \"cummulativeQuoteQty\": \"10.00000000\",\n                \"status\": \"FILLED\",\n                \"timeInForce\": \"GTC\",\n                \"type\": \"MARKET\",\n                \"side\": \"SELL\"\n            }\n\n        Response FULL:\n\n        .. code-block:: python\n\n            {\n                \"symbol\": \"BTCUSDT\",\n                \"orderId\": 28,\n                \"clientOrderId\": \"6gCrw2kRUAF9CvJDGP16IP\",\n                \"transactTime\": 1507725176595,\n                \"price\": \"1.00000000\",\n                \"origQty\": \"10.00000000\",\n                \"executedQty\": \"10.00000000\",\n                \"cummulativeQuoteQty\": \"10.00000000\",\n                \"status\": \"FILLED\",\n                \"timeInForce\": \"GTC\",\n                \"type\": \"MARKET\",\n                \"side\": \"SELL\",\n                \"fills\": [\n                    {\n                        \"price\": \"4000.00000000\",\n                        \"qty\": \"1.00000000\",\n                        \"commission\": \"4.00000000\",\n                        \"commissionAsset\": \"USDT\"\n                    },\n                    {\n                        \"price\": \"3999.00000000\",\n                        \"qty\": \"5.00000000\",\n                        \"commission\": \"19.99500000\",\n                        \"commissionAsset\": \"USDT\"\n                    },\n                    {\n                        \"price\": \"3998.00000000\",\n                        \"qty\": \"2.00000000\",\n                        \"commission\": \"7.99600000\",\n                        \"commissionAsset\": \"USDT\"\n                    },\n                    {\n                        \"price\": \"3997.00000000\",\n                        \"qty\": \"1.00000000\",\n                        \"commission\": \"3.99700000\",\n                        \"commi""ssionAsset\": \"USDT\"\n                    },\n                    {\n                        \"price\": \"3995.00000000\",\n                        \"qty\": \"1.00000000\",\n                        \"commission\": \"3.99500000\",\n                        \"commissionAsset\": \"USDT\"\n                    }\n                ]\n            }\n\n        :raises: BinanceRequestException, BinanceAPIException, BinanceOrderException, BinanceOrderMinAmountException,\n            BinanceOrderMinPriceException, BinanceOrderMinTotalException, BinanceOrderUnknownSymbolException,\n            BinanceOrderInactiveSymbolException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_221create_margin_order = {"create_margin_order", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_221create_margin_order, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_220create_margin_order};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_221create_margin_order(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("create_margin_order (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 4202, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 4202, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "create_margin_order", 1) < 0) __PYX_ERR(0, 4202, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("create_margin_order", 1, 1, 1, i); __PYX_ERR(0, 4202, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 4202, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("create_margin_order", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 4202, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.create_margin_order", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_220create_margin_order(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_220create_margin_order(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("create_margin_order", 0);

  /* "unicorn_binance_rest_api/manager.py":4321
 * 
 *         """
 *         return self._request_margin_api('post', 'margin/order', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def cancel_margin_order(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4321, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 4321, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_signed, Py_True) < 0) __PYX_ERR(0, 4321, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 4321, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[41], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4321, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":4202
 *         return self._request_margin_api('get', 'margin/allOrderList', signed=True, data=params)
 * 
 *     def create_margin_order(self, **params):             # <<<<<<<<<<<<<<
 *         """Post a new order for margin account.
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.create_margin_order", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":4323
 *         return self._request_margin_api('post', 'margin/order', signed=True, data=params)
 * 
 *     def cancel_margin_order(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Cancel an active order for margin account.
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_223cancel_margin_order(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_222cancel_margin_order, "\n        Cancel an active order for margin account.\n\n        Either orderId or origClientOrderId must be sent.\n\n        https://binance-docs.github.io/apidocs/spot/en/#margin-account-cancel-order-trade\n\n        :param symbol: required\n        :type symbol: str\n        :param isIsolated: set to 'TRUE' for isolated margin (default 'FALSE')\n        :type isIsolated: str\n        :param orderId:\n        :type orderId: str\n        :param origClientOrderId:\n        :type origClientOrderId: str\n        :param newClientOrderId: Used to uniquely identify this cancel. Automatically generated by default.\n        :type newClientOrderId: str\n        :param recvWindow: the number of milliseconds the request is valid for\n        :type recvWindow: int\n\n        :return: API response\n\n        .. code-block:: python\n\n            {\n                \"symbol\": \"LTCBTC\",\n                \"orderId\": 28,\n                \"origClientOrderId\": \"myOrder1\",\n                \"clientOrderId\": \"cancelMyOrder1\",\n                \"transactTime\": 1507725176595,\n                \"price\": \"1.00000000\",\n                \"origQty\": \"10.00000000\",\n                \"executedQty\": \"8.00000000\",\n                \"cummulativeQuoteQty\": \"8.00000000\",\n                \"status\": \"CANCELED\",\n                \"timeInForce\": \"GTC\",\n                \"type\": \"LIMIT\",\n                \"side\": \"SELL\"\n            }\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_223cancel_margin_order = {"cancel_margin_order", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_223cancel_margin_order, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_222cancel_margin_order};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_223cancel_margin_order(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("cancel_margin_order (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 4323, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 4323, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "cancel_margin_order", 1) < 0) __PYX_ERR(0, 4323, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("cancel_margin_order", 1, 1, 1, i); __PYX_ERR(0, 4323, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 4323, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("cancel_margin_order", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 4323, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.cancel_margin_order", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_222cancel_margin_order(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_222cancel_margin_order(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("cancel_margin_order", 0);

  /* "unicorn_binance_rest_api/manager.py":4368
 *         """
 * 
 *         return self._request_margin_api('delete', 'margin/order', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_margin_loan_details(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4368, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 4368, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_signed, Py_True) < 0) __PYX_ERR(0, 4368, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 4368, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[42], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4368, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":4323
 *         return self._request_margin_api('post', 'margin/order', signed=True, data=params)
 * 
 *     def cancel_margin_order(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Cancel an active order for margin account.
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.cancel_margin_order", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":4370
 *         return self._request_margin_api('delete', 'margin/order', signed=True, data=params)
 * 
 *     def get_margin_loan_details(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Query loan record
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_225get_margin_loan_details(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_224get_margin_loan_details, "\n        Query loan record\n\n        txId or startTime must be sent. txId takes precedence.\n\n        https://binance-docs.github.io/apidocs/spot/en/#query-loan-record-user_data\n\n        :param asset: required\n        :type asset: str\n        :param isolatedSymbol: isolated symbol (if querying isolated margin)\n        :type isolatedSymbol: str\n        :param txId: the tranId in of the created loan\n        :type txId: str\n        :param startTime: the earliest timestamp to filter transactions\n        :type startTime: str\n        :param endTime: Used to uniquely identify this cancel. Automatically generated by default.\n        :type endTime: str\n        :param current: Currently querying page. Start from 1. Default:1\n        :type current: str\n        :param size: Default:10 Max:100\n        :type size: int\n        :param recvWindow: the number of milliseconds the request is valid for\n        :type recvWindow: int\n\n        :return: API response\n\n        .. code-block:: python\n\n            {\n                \"rows\": [\n                    {\n                        \"asset\": \"BNB\",\n                        \"principal\": \"0.84624403\",\n                        \"timestamp\": 1555056425000, # one of PENDING (pending to execution), CONFIRMED (successfully\n                                                    # loaned), FAILED (execution failed, nothing happened to your\n                                                    # account);\n                        \"status\": \"CONFIRMED\"\n                    }\n                ],\n                \"total\": 1\n            }\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_225get_margin_loan_details = {"get_margin_loan_details", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_225get_margin_loan_details, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_224get_margin_loan_details};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_225get_margin_loan_details(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_margin_loan_details (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 4370, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 4370, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "get_margin_loan_details", 1) < 0) __PYX_ERR(0, 4370, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_margin_loan_details", 1, 1, 1, i); __PYX_ERR(0, 4370, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 4370, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_margin_loan_details", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 4370, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_margin_loan_details", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_224get_margin_loan_details(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_224get_margin_loan_details(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_margin_loan_details", 0);

  /* "unicorn_binance_rest_api/manager.py":4416
 * 
 *         """
 *         return self._request_margin_api('get', 'margin/loan', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_margin_repay_details(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4416, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 4416, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_signed, Py_True) < 0) __PYX_ERR(0, 4416, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 4416, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[43], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4416, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":4370
 *         return self._request_margin_api('delete', 'margin/order', signed=True, data=params)
 * 
 *     def get_margin_loan_details(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Query loan record
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_margin_loan_details", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":4418
 *         return self._request_margin_api('get', 'margin/loan', signed=True, data=params)
 * 
 *     def get_margin_repay_details(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Query repay record
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_227get_margin_repay_details(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_226get_margin_repay_details, "\n        Query repay record\n\n        txId or startTime must be sent. txId takes precedence.\n\n        https://binance-docs.github.io/apidocs/spot/en/#query-repay-record-user_data\n\n        :param asset: required\n        :type asset: str\n        :param isolatedSymbol: isolated symbol (if querying isolated margin)\n        :type isolatedSymbol: str\n        :param txId: the tranId in of the created loan\n        :type txId: str\n        :param startTime:\n        :type startTime: str\n        :param endTime: Used to uniquely identify this cancel. Automatically generated by default.\n        :type endTime: str\n        :param current: Currently querying page. Start from 1. Default:1\n        :type current: str\n        :param size: Default:10 Max:100\n        :type size: int\n        :param recvWindow: the number of milliseconds the request is valid for\n        :type recvWindow: int\n\n        :return: API response\n\n        .. code-block:: python\n\n            {\n                \"rows\": [\n                    {\n                        //Total amount repaid\n                        \"amount\": \"14.00000000\",\n                        \"asset\": \"BNB\",\n                        //Interest repaid\n                        \"interest\": \"0.01866667\",\n                        //Principal repaid\n                        \"principal\": \"13.98133333\", # one of PENDING (pending to execution), CONFIRMED (successfully\n                                                    # loaned), FAILED (execution failed, nothing happened to your\n                                                    # account);\n                        \"status\": \"CONFIRMED\",\n                        \"timestamp\": 1563438204000,\n                        \"txId\": 2970933056\n                    }\n                ],\n                \"total\": 1\n            }\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_227get_margin_repay_details = {"get_margin_repay_details", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_227get_margin_repay_details, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_226get_margin_repay_details};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_227get_margin_repay_details(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_margin_repay_details (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 4418, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 4418, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "get_margin_repay_details", 1) < 0) __PYX_ERR(0, 4418, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_margin_repay_details", 1, 1, 1, i); __PYX_ERR(0, 4418, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 4418, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_margin_repay_details", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 4418, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_margin_repay_details", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_226get_margin_repay_details(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_226get_margin_repay_details(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_margin_repay_details", 0);

  /* "unicorn_binance_rest_api/manager.py":4470
 * 
 *         """
 *         return self._request_margin_api('get', 'margin/repay', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_margin_order(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4470, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 4470, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_signed, Py_True) < 0) __PYX_ERR(0, 4470, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 4470, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[44], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4470, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":4418
 *         return self._request_margin_api('get', 'margin/loan', signed=True, data=params)
 * 
 *     def get_margin_repay_details(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Query repay record
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_margin_repay_details", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":4472
 *         return self._request_margin_api('get', 'margin/repay', signed=True, data=params)
 * 
 *     def get_margin_order(self, **params):             # <<<<<<<<<<<<<<
 *         """Query margin accounts order
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_229get_margin_order(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_228get_margin_order, "Query margin accounts order\n\n        Either orderId or origClientOrderId must be sent.\n\n        For some historical orders cummulativeQuoteQty will be < 0, meaning the data is not available at this time.\n\n        https://binance-docs.github.io/apidocs/spot/en/#query-margin-account-39-s-order-user_data\n\n        :param symbol: required\n        :type symbol: str\n        :param isIsolated: set to 'TRUE' for isolated margin (default 'FALSE')\n        :type isIsolated: str\n        :param orderId:\n        :type orderId: str\n        :param origClientOrderId:\n        :type origClientOrderId: str\n        :param recvWindow: the number of milliseconds the request is valid for\n        :type recvWindow: int\n\n        :return: API response\n\n        .. code-block:: python\n\n            {\n                \"clientOrderId\": \"ZwfQzuDIGpceVhKW5DvCmO\",\n                \"cummulativeQuoteQty\": \"0.00000000\",\n                \"executedQty\": \"0.00000000\",\n                \"icebergQty\": \"0.00000000\",\n                \"isWorking\": true,\n                \"orderId\": 213205622,\n                \"origQty\": \"0.30000000\",\n                \"price\": \"0.00493630\",\n                \"side\": \"SELL\",\n                \"status\": \"NEW\",\n                \"stopPrice\": \"0.00000000\",\n                \"symbol\": \"BNBBTC\",\n                \"time\": 1562133008725,\n                \"timeInForce\": \"GTC\",\n                \"type\": \"LIMIT\",\n                \"updateTime\": 1562133008725\n            }\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_229get_margin_order = {"get_margin_order", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_229get_margin_order, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_228get_margin_order};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_229get_margin_order(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_margin_order (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 4472, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 4472, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "get_margin_order", 1) < 0) __PYX_ERR(0, 4472, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_margin_order", 1, 1, 1, i); __PYX_ERR(0, 4472, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 4472, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_margin_order", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 4472, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_margin_order", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_228get_margin_order(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_228get_margin_order(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_margin_order", 0);

  /* "unicorn_binance_rest_api/manager.py":4518
 * 
 *         """
 *         return self._request_margin_api('get', 'margin/order', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_open_margin_orders(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4518, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 4518, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_signed, Py_True) < 0) __PYX_ERR(0, 4518, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 4518, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[45], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4518, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":4472
 *         return self._request_margin_api('get', 'margin/repay', signed=True, data=params)
 * 
 *     def get_margin_order(self, **params):             # <<<<<<<<<<<<<<
 *         """Query margin accounts order
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_margin_order", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":4520
 *         return self._request_margin_api('get', 'margin/order', signed=True, data=params)
 * 
 *     def get_open_margin_orders(self, **params):             # <<<<<<<<<<<<<<
 *         """Query margin accounts open orders
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_231get_open_margin_orders(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_230get_open_margin_orders, "Query margin accounts open orders\n\n        If the symbol is not sent, orders for all symbols will be returned in an array (cross-margin only).\n\n        If querying isolated margin orders, both the isIsolated='TRUE' and symbol=symbol_name must be set.\n\n        When all symbols are returned, the number of requests counted against the rate limiter is equal to the number\n        of symbols currently trading on the exchange.\n\n        https://binance-docs.github.io/apidocs/spot/en/#query-margin-account-39-s-open-order-user_data\n\n        :param symbol: optional\n        :type symbol: str\n        :param isIsolated: set to 'TRUE' for isolated margin (default 'FALSE')\n        :type isIsolated: str\n        :param recvWindow: the number of milliseconds the request is valid for\n        :type recvWindow: int\n\n        :return: API response\n\n        .. code-block:: python\n\n            [\n                {\n                    \"clientOrderId\": \"qhcZw71gAkCCTv0t0k8LUK\",\n                    \"cummulativeQuoteQty\": \"0.00000000\",\n                    \"executedQty\": \"0.00000000\",\n                    \"icebergQty\": \"0.00000000\",\n                    \"isWorking\": true,\n                    \"orderId\": 211842552,\n                    \"origQty\": \"0.30000000\",\n                    \"price\": \"0.00475010\",\n                    \"side\": \"SELL\",\n                    \"status\": \"NEW\",\n                    \"stopPrice\": \"0.00000000\",\n                    \"symbol\": \"BNBBTC\",\n                    \"time\": 1562040170089,\n                    \"timeInForce\": \"GTC\",\n                    \"type\": \"LIMIT\",\n                    \"updateTime\": 1562040170089\n                } ]\n\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_231get_open_margin_orders = {"get_open_margin_orders", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_231get_open_margin_orders, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_230get_open_margin_orders};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_231get_open_margin_orders(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_open_margin_orders (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 4520, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 4520, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "get_open_margin_orders", 1) < 0) __PYX_ERR(0, 4520, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_open_margin_orders", 1, 1, 1, i); __PYX_ERR(0, 4520, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 4520, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_open_margin_orders", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 4520, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_open_margin_orders", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_230get_open_margin_orders(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_230get_open_margin_orders(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_open_margin_orders", 0);

  /* "unicorn_binance_rest_api/manager.py":4568
 *         """
 * 
 *         return self._request_margin_api('get', 'margin/openOrders', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_open_isolated_margin_orders(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4568, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 4568, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_signed, Py_True) < 0) __PYX_ERR(0, 4568, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 4568, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[46], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4568, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":4520
 *         return self._request_margin_api('get', 'margin/order', signed=True, data=params)
 * 
 *     def get_open_margin_orders(self, **params):             # <<<<<<<<<<<<<<
 *         """Query margin accounts open orders
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_open_margin_orders", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":4570
 *         return self._request_margin_api('get', 'margin/openOrders', signed=True, data=params)
 * 
 *     def get_open_isolated_margin_orders(self, **params):             # <<<<<<<<<<<<<<
 *         """Query isolated margin accounts open orders
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_233get_open_isolated_margin_orders(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_232get_open_isolated_margin_orders, "Query isolated margin accounts open orders\n\n        If the symbol is not sent, orders for all symbols will be returned in an array (cross-margin only).\n\n        If querying isolated margin orders, both the isIsolated='TRUE' and symbol=symbol_name must be set.\n\n        When all symbols are returned, the number of requests counted against the rate limiter is equal to the number\n        of symbols currently trading on the exchange.\n\n        https://binance-docs.github.io/apidocs/spot/en/#query-margin-account-39-s-open-order-user_data\n\n        :param symbol: optional\n        :type symbol: str\n        :param isIsolated: set to 'TRUE' for isolated margin (default 'FALSE')\n        :type isIsolated: str\n        :param recvWindow: the number of milliseconds the request is valid for\n        :type recvWindow: int\n        :return: API response\n\n        .. code-block:: python\n\n            [\n                {\n                    \"clientOrderId\": \"qhcZw71gAkCCTv0t0k8LUK\",\n                    \"cummulativeQuoteQty\": \"0.00000000\",\n                    \"executedQty\": \"0.00000000\",\n                    \"icebergQty\": \"0.00000000\",\n                    \"isWorking\": true,\n                    \"orderId\": 211842552,\n                    \"origQty\": \"0.30000000\",\n                    \"price\": \"0.00475010\",\n                    \"side\": \"SELL\",\n                    \"status\": \"NEW\",\n                    \"stopPrice\": \"0.00000000\",\n                    \"symbol\": \"BNBBTC\",\n                    \"time\": 1562040170089,\n                    \"timeInForce\": \"GTC\",\n                    \"type\": \"LIMIT\",\n                    \"updateTime\": 1562040170089\n                } ]\n\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_233get_open_isolated_margin_orders = {"get_open_isolated_margin_orders", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_233get_open_isolated_margin_orders, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_232get_open_isolated_margin_orders};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_233get_open_isolated_margin_orders(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_open_isolated_margin_orders (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 4570, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 4570, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "get_open_isolated_margin_orders", 1) < 0) __PYX_ERR(0, 4570, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_open_isolated_margin_orders", 1, 1, 1, i); __PYX_ERR(0, 4570, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 4570, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_open_isolated_margin_orders", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 4570, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_open_isolated_margin_orders", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_232get_open_isolated_margin_orders(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_232get_open_isolated_margin_orders(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_open_isolated_margin_orders", 0);

  /* "unicorn_binance_rest_api/manager.py":4618
 * 
 *         # Todo: Add isIsolated parameter
 *         return self._request_margin_api('get', 'margin/openOrders', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_all_margin_orders(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4618, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 4618, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_signed, Py_True) < 0) __PYX_ERR(0, 4618, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 4618, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[46], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4618, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":4570
 *         return self._request_margin_api('get', 'margin/openOrders', signed=True, data=params)
 * 
 *     def get_open_isolated_margin_orders(self, **params):             # <<<<<<<<<<<<<<
 *         """Query isolated margin accounts open orders
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_open_isolated_margin_orders", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":4620
 *         return self._request_margin_api('get', 'margin/openOrders', signed=True, data=params)
 * 
 *     def get_all_margin_orders(self, **params):             # <<<<<<<<<<<<<<
 *         """Query all margin accounts orders
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_235get_all_margin_orders(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_234get_all_margin_orders, "Query all margin accounts orders\n\n        If orderId is set, it will get orders >= that orderId. Otherwise most recent orders are returned.\n\n        For some historical orders cummulativeQuoteQty will be < 0, meaning the data is not available at this time.\n\n        https://binance-docs.github.io/apidocs/spot/en/#query-margin-account-39-s-all-order-user_data\n\n        :param symbol: required\n        :type symbol: str\n        :param isIsolated: set to 'TRUE' for isolated margin (default 'FALSE')\n        :type isIsolated: str\n        :param orderId: optional\n        :type orderId: str\n        :param startTime: optional\n        :type startTime: str\n        :param endTime: optional\n        :type endTime: str\n        :param limit: Default 500; max 1000\n        :type limit: int\n        :param recvWindow: the number of milliseconds the request is valid for\n        :type recvWindow: int\n\n        :return: API response\n\n        .. code-block:: python\n\n            [\n                {\n                    \"id\": 43123876,\n                    \"price\": \"0.00395740\",\n                    \"qty\": \"4.06000000\",\n                    \"quoteQty\": \"0.01606704\",\n                    \"symbol\": \"BNBBTC\",\n                    \"time\": 1556089977693\n                },\n                {\n                    \"id\": 43123877,\n                    \"price\": \"0.00395740\",\n                    \"qty\": \"0.77000000\",\n                    \"quoteQty\": \"0.00304719\",\n                    \"symbol\": \"BNBBTC\",\n                    \"time\": 1556089977693\n                },\n                {\n                    \"id\": 43253549,\n                    \"price\": \"0.00428930\",\n                    \"qty\": \"23.30000000\",\n                    \"quoteQty\": \"0.09994069\",\n                    \"symbol\": \"BNBBTC\",\n                    \"time\": 1556163963504\n                }\n            ]\n\n\n        :raises: BinanceRequestException, Bina""nceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_235get_all_margin_orders = {"get_all_margin_orders", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_235get_all_margin_orders, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_234get_all_margin_orders};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_235get_all_margin_orders(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_all_margin_orders (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 4620, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 4620, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "get_all_margin_orders", 1) < 0) __PYX_ERR(0, 4620, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_all_margin_orders", 1, 1, 1, i); __PYX_ERR(0, 4620, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 4620, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_all_margin_orders", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 4620, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_all_margin_orders", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_234get_all_margin_orders(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_234get_all_margin_orders(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_all_margin_orders", 0);

  /* "unicorn_binance_rest_api/manager.py":4679
 * 
 *         """
 *         return self._request_margin_api('get', 'margin/allOrders', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_margin_trades(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4679, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 4679, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_signed, Py_True) < 0) __PYX_ERR(0, 4679, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 4679, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[47], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4679, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":4620
 *         return self._request_margin_api('get', 'margin/openOrders', signed=True, data=params)
 * 
 *     def get_all_margin_orders(self, **params):             # <<<<<<<<<<<<<<
 *         """Query all margin accounts orders
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_all_margin_orders", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":4681
 *         return self._request_margin_api('get', 'margin/allOrders', signed=True, data=params)
 * 
 *     def get_margin_trades(self, **params):             # <<<<<<<<<<<<<<
 *         """Query margin accounts trades
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_237get_margin_trades(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_236get_margin_trades, "Query margin accounts trades\n\n        If fromId is set, it will get orders >= that fromId. Otherwise most recent orders are returned.\n\n        https://binance-docs.github.io/apidocs/spot/en/#query-margin-account-39-s-trade-list-user_data\n\n        :param symbol: required\n        :type symbol: str\n        :param isIsolated: set to 'TRUE' for isolated margin (default 'FALSE')\n        :type isIsolated: str\n        :param fromId: optional\n        :type fromId: str\n        :param startTime: optional\n        :type startTime: str\n        :param endTime: optional\n        :type endTime: str\n        :param limit: Default 500; max 1000\n        :type limit: int\n        :param recvWindow: the number of milliseconds the request is valid for\n        :type recvWindow: int\n\n        :returns: API response\n\n        .. code-block:: python\n\n            [\n                {\n                    \"commission\": \"0.00006000\",\n                    \"commissionAsset\": \"BTC\",\n                    \"id\": 34,\n                    \"isBestMatch\": true,\n                    \"isBuyer\": false,\n                    \"isMaker\": false,\n                    \"orderId\": 39324,\n                    \"price\": \"0.02000000\",\n                    \"qty\": \"3.00000000\",\n                    \"symbol\": \"BNBBTC\",\n                    \"time\": 1561973357171\n                }, {\n                    \"commission\": \"0.00002950\",\n                    \"commissionAsset\": \"BTC\",\n                    \"id\": 32,\n                    \"isBestMatch\": true,\n                    \"isBuyer\": false,\n                    \"isMaker\": true,\n                    \"orderId\": 39319,\n                    \"price\": \"0.00590000\",\n                    \"qty\": \"5.00000000\",\n                    \"symbol\": \"BNBBTC\",\n                    \"time\": 1561964645345\n                }\n            ]\n\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_237get_margin_trades = {"get_margin_trades", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_237get_margin_trades, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_236get_margin_trades};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_237get_margin_trades(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_margin_trades (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 4681, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 4681, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "get_margin_trades", 1) < 0) __PYX_ERR(0, 4681, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_margin_trades", 1, 1, 1, i); __PYX_ERR(0, 4681, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 4681, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_margin_trades", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 4681, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_margin_trades", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_236get_margin_trades(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_236get_margin_trades(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_margin_trades", 0);

  /* "unicorn_binance_rest_api/manager.py":4739
 * 
 *         """
 *         return self._request_margin_api('get', 'margin/myTrades', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_max_margin_loan(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4739, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 4739, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_signed, Py_True) < 0) __PYX_ERR(0, 4739, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 4739, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[48], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4739, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":4681
 *         return self._request_margin_api('get', 'margin/allOrders', signed=True, data=params)
 * 
 *     def get_margin_trades(self, **params):             # <<<<<<<<<<<<<<
 *         """Query margin accounts trades
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_margin_trades", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":4741
 *         return self._request_margin_api('get', 'margin/myTrades', signed=True, data=params)
 * 
 *     def get_max_margin_loan(self, **params):             # <<<<<<<<<<<<<<
 *         """Query max borrow amount for an asset
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_239get_max_margin_loan(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_238get_max_margin_loan, "Query max borrow amount for an asset\n\n        https://binance-docs.github.io/apidocs/spot/en/#query-max-borrow-user_data\n\n        :param asset: required\n        :type asset: str\n        :param isolatedSymbol: isolated symbol (if querying isolated margin)\n        :type isolatedSymbol: str\n        :param recvWindow: the number of milliseconds the request is valid for\n        :type recvWindow: int\n\n        :returns: API response\n\n        .. code-block:: python\n\n            {\n                \"amount\": \"1.69248805\"\n            }\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_239get_max_margin_loan = {"get_max_margin_loan", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_239get_max_margin_loan, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_238get_max_margin_loan};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_239get_max_margin_loan(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_max_margin_loan (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 4741, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 4741, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "get_max_margin_loan", 1) < 0) __PYX_ERR(0, 4741, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_max_margin_loan", 1, 1, 1, i); __PYX_ERR(0, 4741, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 4741, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_max_margin_loan", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 4741, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_max_margin_loan", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_238get_max_margin_loan(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_238get_max_margin_loan(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_max_margin_loan", 0);

  /* "unicorn_binance_rest_api/manager.py":4764
 * 
 *         """
 *         return self._request_margin_api('get', 'margin/maxBorrowable', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_max_margin_transfer(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4764, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 4764, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_signed, Py_True) < 0) __PYX_ERR(0, 4764, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 4764, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[49], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4764, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":4741
 *         return self._request_margin_api('get', 'margin/myTrades', signed=True, data=params)
 * 
 *     def get_max_margin_loan(self, **params):             # <<<<<<<<<<<<<<
 *         """Query max borrow amount for an asset
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_max_margin_loan", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":4766
 *         return self._request_margin_api('get', 'margin/maxBorrowable', signed=True, data=params)
 * 
 *     def get_max_margin_transfer(self, **params):             # <<<<<<<<<<<<<<
 *         r"""
 *         Query max transfer-out amount
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_241get_max_margin_transfer(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_240get_max_margin_transfer, "\n        Query max transfer-out amount\n\n        https://binance-docs.github.io/apidocs/spot/en/#query-max-transfer-out-amount-user_data\n\n        :param asset: required\n        :type asset: str\n        :param isolatedSymbol: isolated symbol (if querying isolated margin)\n        :type isolatedSymbol: str\n        :param recvWindow: the number of milliseconds the request is valid for\n        :type recvWindow: int\n\n        :return: API response\n\n        .. code-block:: python\n\n            {\n                \"amount\": \"3.59498107\"\n            }\n\n        :raises: BinanceRequestException, BinanceAPIException\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_241get_max_margin_transfer = {"get_max_margin_transfer", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_241get_max_margin_transfer, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_240get_max_margin_transfer};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_241get_max_margin_transfer(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_max_margin_transfer (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 4766, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 4766, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "get_max_margin_transfer", 1) < 0) __PYX_ERR(0, 4766, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_max_margin_transfer", 1, 1, 1, i); __PYX_ERR(0, 4766, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 4766, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_max_margin_transfer", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 4766, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_max_margin_transfer", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_240get_max_margin_transfer(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_240get_max_margin_transfer(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_max_margin_transfer", 0);

  /* "unicorn_binance_rest_api/manager.py":4790
 *         """
 * 
 *         return self._request_margin_api('get', 'margin/maxTransferable', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     # Cross-margin
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4790, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 4790, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_signed, Py_True) < 0) __PYX_ERR(0, 4790, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 4790, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[50], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4790, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":4766
 *         return self._request_margin_api('get', 'margin/maxBorrowable', signed=True, data=params)
 * 
 *     def get_max_margin_transfer(self, **params):             # <<<<<<<<<<<<<<
 *         r"""
 *         Query max transfer-out amount
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_max_margin_transfer", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":4794
 *     # Cross-margin
 * 
 *     def margin_stream_get_listen_key(self, output="value", throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         """Start a new cross-margin data stream and return the listen key
 *         If a stream already exists it should return the same key.
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_243margin_stream_get_listen_key(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_242margin_stream_get_listen_key, "Start a new cross-margin data stream and return the listen key\n        If a stream already exists it should return the same key.\n        If the stream becomes invalid a new key is returned.\n\n        Can be used to keep the stream alive.\n\n        https://binance-docs.github.io/apidocs/spot/en/#listen-key-margin\n\n        :param output: Set `output` to \"raw_data\" to receive the request resource, default is \"value\" which returns\n                        the plain listenKey.\n        :type output: str\n        :param throw_exception: Default `True`, if `False` the raw response will be returned.\n        :type throw_exception: bool\n        :returns: API response\n\n        .. code-block:: python\n\n            {\n                \"listenKey\": \"pqia91ma19a5s61cv6a81va65sdf19v8a65a1a5s61cv6a81va65sdf19v8a65a1\"\n            }\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_243margin_stream_get_listen_key = {"margin_stream_get_listen_key", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_243margin_stream_get_listen_key, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_242margin_stream_get_listen_key};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_243margin_stream_get_listen_key(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_output = 0;
  PyObject *__pyx_v_throw_exception = 0;
  PyObject *__pyx_v_kwargs = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[3] = {0,0,0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("margin_stream_get_listen_key (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_kwargs = PyDict_New(); if (unlikely(!__pyx_v_kwargs)) return NULL;
  __Pyx_GOTREF(__pyx_v_kwargs);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,&__pyx_mstate_global->__pyx_n_u_output,&__pyx_mstate_global->__pyx_n_u_throw_exception,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 4794, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  3:
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 4794, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 4794, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 4794, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_kwargs, values, kwd_pos_args, __pyx_kwds_len, "margin_stream_get_listen_key", 1) < 0) __PYX_ERR(0, 4794, __pyx_L3_error)
      if (!values[1]) values[1] = __Pyx_NewRef(((PyObject *)((PyObject*)__pyx_mstate_global->__pyx_n_u_value)));
      if (!values[2]) values[2] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_True)));
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("margin_stream_get_listen_key", 0, 1, 3, i); __PYX_ERR(0, 4794, __pyx_L3_error) }
      }
    } else {
      switch (__pyx_nargs) {
        case  3:
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 4794, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 4794, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 4794, __pyx_L3_error)
        break;
        default: goto __pyx_L5_argtuple_error;
      }
      if (!values[1]) values[1] = __Pyx_NewRef(((PyObject *)((PyObject*)__pyx_mstate_global->__pyx_n_u_value)));
      if (!values[2]) values[2] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_True)));
    }
    __pyx_v_self = values[0];
    __pyx_v_output = values[1];
    __pyx_v_throw_exception = values[2];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("margin_stream_get_listen_key", 0, 1, 3, __pyx_nargs); __PYX_ERR(0, 4794, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_kwargs); __pyx_v_kwargs = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.margin_stream_get_listen_key", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_242margin_stream_get_listen_key(__pyx_self, __pyx_v_self, __pyx_v_output, __pyx_v_throw_exception, __pyx_v_kwargs);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_kwargs);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_242margin_stream_get_listen_key(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_output, PyObject *__pyx_v_throw_exception, PyObject *__pyx_v_kwargs) {
  PyObject *__pyx_v_res = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  PyObject *__pyx_t_4 = NULL;
  int __pyx_t_5;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("margin_stream_get_listen_key", 0);

  /* "unicorn_binance_rest_api/manager.py":4819
 * 
 *         """
 *         res = self._request_margin_api('post', 'userDataStream', signed=False, data={},             # <<<<<<<<<<<<<<
 *                                        throw_exception=throw_exception, **kwargs)
 *         if output == "value":
*/
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4819, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_3 = __Pyx_PyDict_NewPresized(3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4819, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  if (PyDict_SetItem(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_signed, Py_False) < 0) __PYX_ERR(0, 4819, __pyx_L1_error)
  __pyx_t_4 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 4819, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (PyDict_SetItem(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_data, __pyx_t_4) < 0) __PYX_ERR(0, 4819, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":4820
 *         """
 *         res = self._request_margin_api('post', 'userDataStream', signed=False, data={},
 *                                        throw_exception=throw_exception, **kwargs)             # <<<<<<<<<<<<<<
 *         if output == "value":
 *             return res['listenKey']
*/
  if (PyDict_SetItem(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_throw_exception, __pyx_v_throw_exception) < 0) __PYX_ERR(0, 4819, __pyx_L1_error)
  __pyx_t_2 = __pyx_t_3;
  __pyx_t_3 = 0;
  if (__Pyx_MergeKeywords(__pyx_t_2, __pyx_v_kwargs) < 0) __PYX_ERR(0, 4820, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":4819
 * 
 *         """
 *         res = self._request_margin_api('post', 'userDataStream', signed=False, data={},             # <<<<<<<<<<<<<<
 *                                        throw_exception=throw_exception, **kwargs)
 *         if output == "value":
*/
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[51], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4819, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_v_res = __pyx_t_3;
  __pyx_t_3 = 0;

  /* "unicorn_binance_rest_api/manager.py":4821
 *         res = self._request_margin_api('post', 'userDataStream', signed=False, data={},
 *                                        throw_exception=throw_exception, **kwargs)
 *         if output == "value":             # <<<<<<<<<<<<<<
 *             return res['listenKey']
 *         elif output == "raw_data":
*/
  __pyx_t_5 = (__Pyx_PyUnicode_Equals(__pyx_v_output, __pyx_mstate_global->__pyx_n_u_value, Py_EQ)); if (unlikely((__pyx_t_5 < 0))) __PYX_ERR(0, 4821, __pyx_L1_error)
  if (__pyx_t_5) {

    /* "unicorn_binance_rest_api/manager.py":4822
 *                                        throw_exception=throw_exception, **kwargs)
 *         if output == "value":
 *             return res['listenKey']             # <<<<<<<<<<<<<<
 *         elif output == "raw_data":
 *             return res
*/
    __Pyx_XDECREF(__pyx_r);
    __pyx_t_3 = __Pyx_PyObject_Dict_GetItem(__pyx_v_res, __pyx_mstate_global->__pyx_n_u_listenKey); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4822, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_r = __pyx_t_3;
    __pyx_t_3 = 0;
    goto __pyx_L0;

    /* "unicorn_binance_rest_api/manager.py":4821
 *         res = self._request_margin_api('post', 'userDataStream', signed=False, data={},
 *                                        throw_exception=throw_exception, **kwargs)
 *         if output == "value":             # <<<<<<<<<<<<<<
 *             return res['listenKey']
 *         elif output == "raw_data":
*/
  }

  /* "unicorn_binance_rest_api/manager.py":4823
 *         if output == "value":
 *             return res['listenKey']
 *         elif output == "raw_data":             # <<<<<<<<<<<<<<
 *             return res
 *         else:
*/
  __pyx_t_5 = (__Pyx_PyUnicode_Equals(__pyx_v_output, __pyx_mstate_global->__pyx_n_u_raw_data, Py_EQ)); if (unlikely((__pyx_t_5 < 0))) __PYX_ERR(0, 4823, __pyx_L1_error)
  if (__pyx_t_5) {

    /* "unicorn_binance_rest_api/manager.py":4824
 *             return res['listenKey']
 *         elif output == "raw_data":
 *             return res             # <<<<<<<<<<<<<<
 *         else:
 *             return res['listenKey']
*/
    __Pyx_XDECREF(__pyx_r);
    __Pyx_INCREF(__pyx_v_res);
    __pyx_r = __pyx_v_res;
    goto __pyx_L0;

    /* "unicorn_binance_rest_api/manager.py":4823
 *         if output == "value":
 *             return res['listenKey']
 *         elif output == "raw_data":             # <<<<<<<<<<<<<<
 *             return res
 *         else:
*/
  }

  /* "unicorn_binance_rest_api/manager.py":4826
 *             return res
 *         else:
 *             return res['listenKey']             # <<<<<<<<<<<<<<
 * 
 *     def margin_stream_keepalive(self, listenKey, throw_exception=True, **kwargs):
*/
  /*else*/ {
    __Pyx_XDECREF(__pyx_r);
    __pyx_t_3 = __Pyx_PyObject_Dict_GetItem(__pyx_v_res, __pyx_mstate_global->__pyx_n_u_listenKey); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4826, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_r = __pyx_t_3;
    __pyx_t_3 = 0;
    goto __pyx_L0;
  }

  /* "unicorn_binance_rest_api/manager.py":4794
 *     # Cross-margin
 * 
 *     def margin_stream_get_listen_key(self, output="value", throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         """Start a new cross-margin data stream and return the listen key
 *         If a stream already exists it should return the same key.
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.margin_stream_get_listen_key", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_res);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":4828
 *             return res['listenKey']
 * 
 *     def margin_stream_keepalive(self, listenKey, throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         """PING a cross-margin data stream to prevent a timeout.
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_245margin_stream_keepalive(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_244margin_stream_keepalive, "PING a cross-margin data stream to prevent a timeout.\n\n        https://binance-docs.github.io/apidocs/spot/en/#listen-key-margin\n\n        :param listenKey: required\n        :type listenKey: str\n        :param throw_exception: Default `True`, if `False` the raw response will be returned.\n        :type throw_exception: bool\n\n        :returns: API response\n\n        .. code-block:: python\n\n            {}\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_245margin_stream_keepalive = {"margin_stream_keepalive", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_245margin_stream_keepalive, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_244margin_stream_keepalive};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_245margin_stream_keepalive(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_listenKey = 0;
  PyObject *__pyx_v_throw_exception = 0;
  PyObject *__pyx_v_kwargs = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[3] = {0,0,0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("margin_stream_keepalive (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_kwargs = PyDict_New(); if (unlikely(!__pyx_v_kwargs)) return NULL;
  __Pyx_GOTREF(__pyx_v_kwargs);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,&__pyx_mstate_global->__pyx_n_u_listenKey,&__pyx_mstate_global->__pyx_n_u_throw_exception,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 4828, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  3:
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 4828, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 4828, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 4828, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_kwargs, values, kwd_pos_args, __pyx_kwds_len, "margin_stream_keepalive", 1) < 0) __PYX_ERR(0, 4828, __pyx_L3_error)
      if (!values[2]) values[2] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_True)));
      for (Py_ssize_t i = __pyx_nargs; i < 2; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("margin_stream_keepalive", 0, 2, 3, i); __PYX_ERR(0, 4828, __pyx_L3_error) }
      }
    } else {
      switch (__pyx_nargs) {
        case  3:
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 4828, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 4828, __pyx_L3_error)
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 4828, __pyx_L3_error)
        break;
        default: goto __pyx_L5_argtuple_error;
      }
      if (!values[2]) values[2] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_True)));
    }
    __pyx_v_self = values[0];
    __pyx_v_listenKey = values[1];
    __pyx_v_throw_exception = values[2];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("margin_stream_keepalive", 0, 2, 3, __pyx_nargs); __PYX_ERR(0, 4828, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_kwargs); __pyx_v_kwargs = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.margin_stream_keepalive", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_244margin_stream_keepalive(__pyx_self, __pyx_v_self, __pyx_v_listenKey, __pyx_v_throw_exception, __pyx_v_kwargs);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_kwargs);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_244margin_stream_keepalive(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_listenKey, PyObject *__pyx_v_throw_exception, PyObject *__pyx_v_kwargs) {
  PyObject *__pyx_v_params = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("margin_stream_keepalive", 0);

  /* "unicorn_binance_rest_api/manager.py":4848
 *         """
 *         params = {
 *             'listenKey': listenKey             # <<<<<<<<<<<<<<
 *         }
 *         return self._request_margin_api('put', 'userDataStream', signed=False, data=params,
*/
  __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4848, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_t_1, __pyx_mstate_global->__pyx_n_u_listenKey, __pyx_v_listenKey) < 0) __PYX_ERR(0, 4848, __pyx_L1_error)
  __pyx_v_params = ((PyObject*)__pyx_t_1);
  __pyx_t_1 = 0;

  /* "unicorn_binance_rest_api/manager.py":4850
 *             'listenKey': listenKey
 *         }
 *         return self._request_margin_api('put', 'userDataStream', signed=False, data=params,             # <<<<<<<<<<<<<<
 *                                         throw_exception=throw_exception, **kwargs)
 * 
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4850, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_3 = __Pyx_PyDict_NewPresized(3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4850, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  if (PyDict_SetItem(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_signed, Py_False) < 0) __PYX_ERR(0, 4850, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 4850, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":4851
 *         }
 *         return self._request_margin_api('put', 'userDataStream', signed=False, data=params,
 *                                         throw_exception=throw_exception, **kwargs)             # <<<<<<<<<<<<<<
 * 
 *     def margin_stream_close(self, listenKey, throw_exception=True, **kwargs):
*/
  if (PyDict_SetItem(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_throw_exception, __pyx_v_throw_exception) < 0) __PYX_ERR(0, 4850, __pyx_L1_error)
  __pyx_t_2 = __pyx_t_3;
  __pyx_t_3 = 0;
  if (__Pyx_MergeKeywords(__pyx_t_2, __pyx_v_kwargs) < 0) __PYX_ERR(0, 4851, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":4850
 *             'listenKey': listenKey
 *         }
 *         return self._request_margin_api('put', 'userDataStream', signed=False, data=params,             # <<<<<<<<<<<<<<
 *                                         throw_exception=throw_exception, **kwargs)
 * 
*/
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[52], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4850, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":4828
 *             return res['listenKey']
 * 
 *     def margin_stream_keepalive(self, listenKey, throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         """PING a cross-margin data stream to prevent a timeout.
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.margin_stream_keepalive", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_params);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":4853
 *                                         throw_exception=throw_exception, **kwargs)
 * 
 *     def margin_stream_close(self, listenKey, throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         """Close out a cross-margin data stream.
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_247margin_stream_close(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_246margin_stream_close, "Close out a cross-margin data stream.\n\n        https://binance-docs.github.io/apidocs/spot/en/#listen-key-margin\n\n        :param listenKey: required\n        :type listenKey: str\n        :param throw_exception: Default `True`, if `False` the raw response will be returned.\n        :type throw_exception: bool\n\n        :returns: API response\n\n        .. code-block:: python\n\n            {}\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_247margin_stream_close = {"margin_stream_close", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_247margin_stream_close, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_246margin_stream_close};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_247margin_stream_close(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_listenKey = 0;
  PyObject *__pyx_v_throw_exception = 0;
  PyObject *__pyx_v_kwargs = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[3] = {0,0,0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("margin_stream_close (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_kwargs = PyDict_New(); if (unlikely(!__pyx_v_kwargs)) return NULL;
  __Pyx_GOTREF(__pyx_v_kwargs);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,&__pyx_mstate_global->__pyx_n_u_listenKey,&__pyx_mstate_global->__pyx_n_u_throw_exception,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 4853, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  3:
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 4853, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 4853, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 4853, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_kwargs, values, kwd_pos_args, __pyx_kwds_len, "margin_stream_close", 1) < 0) __PYX_ERR(0, 4853, __pyx_L3_error)
      if (!values[2]) values[2] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_True)));
      for (Py_ssize_t i = __pyx_nargs; i < 2; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("margin_stream_close", 0, 2, 3, i); __PYX_ERR(0, 4853, __pyx_L3_error) }
      }
    } else {
      switch (__pyx_nargs) {
        case  3:
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 4853, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 4853, __pyx_L3_error)
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 4853, __pyx_L3_error)
        break;
        default: goto __pyx_L5_argtuple_error;
      }
      if (!values[2]) values[2] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_True)));
    }
    __pyx_v_self = values[0];
    __pyx_v_listenKey = values[1];
    __pyx_v_throw_exception = values[2];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("margin_stream_close", 0, 2, 3, __pyx_nargs); __PYX_ERR(0, 4853, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_kwargs); __pyx_v_kwargs = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.margin_stream_close", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_246margin_stream_close(__pyx_self, __pyx_v_self, __pyx_v_listenKey, __pyx_v_throw_exception, __pyx_v_kwargs);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_kwargs);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_246margin_stream_close(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_listenKey, PyObject *__pyx_v_throw_exception, PyObject *__pyx_v_kwargs) {
  PyObject *__pyx_v_params = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("margin_stream_close", 0);

  /* "unicorn_binance_rest_api/manager.py":4873
 *         """
 *         params = {
 *             'listenKey': listenKey             # <<<<<<<<<<<<<<
 *         }
 *         return self._request_margin_api('delete', 'userDataStream', signed=False, data=params,
*/
  __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4873, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_t_1, __pyx_mstate_global->__pyx_n_u_listenKey, __pyx_v_listenKey) < 0) __PYX_ERR(0, 4873, __pyx_L1_error)
  __pyx_v_params = ((PyObject*)__pyx_t_1);
  __pyx_t_1 = 0;

  /* "unicorn_binance_rest_api/manager.py":4875
 *             'listenKey': listenKey
 *         }
 *         return self._request_margin_api('delete', 'userDataStream', signed=False, data=params,             # <<<<<<<<<<<<<<
 *                                         throw_exception=throw_exception, **kwargs)
 * 
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4875, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_3 = __Pyx_PyDict_NewPresized(3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4875, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  if (PyDict_SetItem(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_signed, Py_False) < 0) __PYX_ERR(0, 4875, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 4875, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":4876
 *         }
 *         return self._request_margin_api('delete', 'userDataStream', signed=False, data=params,
 *                                         throw_exception=throw_exception, **kwargs)             # <<<<<<<<<<<<<<
 * 
 *     # Isolated margin
*/
  if (PyDict_SetItem(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_throw_exception, __pyx_v_throw_exception) < 0) __PYX_ERR(0, 4875, __pyx_L1_error)
  __pyx_t_2 = __pyx_t_3;
  __pyx_t_3 = 0;
  if (__Pyx_MergeKeywords(__pyx_t_2, __pyx_v_kwargs) < 0) __PYX_ERR(0, 4876, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":4875
 *             'listenKey': listenKey
 *         }
 *         return self._request_margin_api('delete', 'userDataStream', signed=False, data=params,             # <<<<<<<<<<<<<<
 *                                         throw_exception=throw_exception, **kwargs)
 * 
*/
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[53], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4875, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":4853
 *                                         throw_exception=throw_exception, **kwargs)
 * 
 *     def margin_stream_close(self, listenKey, throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         """Close out a cross-margin data stream.
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.margin_stream_close", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_params);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":4880
 *     # Isolated margin
 * 
 *     def isolated_margin_stream_get_listen_key(self, symbol, output="value", throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         """Start a new isolated margin data stream and return the listen key
 *         If a stream already exists it should return the same key.
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_249isolated_margin_stream_get_listen_key(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_248isolated_margin_stream_get_listen_key, "Start a new isolated margin data stream and return the listen key\n        If a stream already exists it should return the same key.\n        If the stream becomes invalid a new key is returned.\n\n        Can be used to keep the stream alive.\n\n        https://binance-docs.github.io/apidocs/spot/en/#listen-key-isolated-margin\n\n        :param symbol: required - symbol for the isolated margin account\n        :type symbol: str\n\n        :param output: Set `output` to \"raw_data\" to receive the request resource, default is \"value\" which returns\n                        the plain listenKey.\n        :type output: str\n        :param throw_exception: Default `True`, if `False` the raw response will be returned.\n        :type throw_exception: bool\n        :returns: API response\n\n        .. code-block:: python\n\n            {\n                \"listenKey\":  \"T3ee22BIYuWqmvne0HNq2A2WsFlEtLhvWCtItw6ffhhdmjifQ2tRbuKkTHhr\"\n            }\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_249isolated_margin_stream_get_listen_key = {"isolated_margin_stream_get_listen_key", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_249isolated_margin_stream_get_listen_key, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_248isolated_margin_stream_get_listen_key};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_249isolated_margin_stream_get_listen_key(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_symbol = 0;
  PyObject *__pyx_v_output = 0;
  PyObject *__pyx_v_throw_exception = 0;
  PyObject *__pyx_v_kwargs = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[4] = {0,0,0,0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("isolated_margin_stream_get_listen_key (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_kwargs = PyDict_New(); if (unlikely(!__pyx_v_kwargs)) return NULL;
  __Pyx_GOTREF(__pyx_v_kwargs);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,&__pyx_mstate_global->__pyx_n_u_symbol,&__pyx_mstate_global->__pyx_n_u_output,&__pyx_mstate_global->__pyx_n_u_throw_exception,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 4880, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  4:
        values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 4880, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  3:
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 4880, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 4880, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 4880, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_kwargs, values, kwd_pos_args, __pyx_kwds_len, "isolated_margin_stream_get_listen_key", 1) < 0) __PYX_ERR(0, 4880, __pyx_L3_error)
      if (!values[2]) values[2] = __Pyx_NewRef(((PyObject *)((PyObject*)__pyx_mstate_global->__pyx_n_u_value)));
      if (!values[3]) values[3] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_True)));
      for (Py_ssize_t i = __pyx_nargs; i < 2; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("isolated_margin_stream_get_listen_key", 0, 2, 4, i); __PYX_ERR(0, 4880, __pyx_L3_error) }
      }
    } else {
      switch (__pyx_nargs) {
        case  4:
        values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 4880, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  3:
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 4880, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 4880, __pyx_L3_error)
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 4880, __pyx_L3_error)
        break;
        default: goto __pyx_L5_argtuple_error;
      }
      if (!values[2]) values[2] = __Pyx_NewRef(((PyObject *)((PyObject*)__pyx_mstate_global->__pyx_n_u_value)));
      if (!values[3]) values[3] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_True)));
    }
    __pyx_v_self = values[0];
    __pyx_v_symbol = values[1];
    __pyx_v_output = values[2];
    __pyx_v_throw_exception = values[3];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("isolated_margin_stream_get_listen_key", 0, 2, 4, __pyx_nargs); __PYX_ERR(0, 4880, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_kwargs); __pyx_v_kwargs = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.isolated_margin_stream_get_listen_key", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_248isolated_margin_stream_get_listen_key(__pyx_self, __pyx_v_self, __pyx_v_symbol, __pyx_v_output, __pyx_v_throw_exception, __pyx_v_kwargs);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_kwargs);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_248isolated_margin_stream_get_listen_key(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_symbol, PyObject *__pyx_v_output, PyObject *__pyx_v_throw_exception, PyObject *__pyx_v_kwargs) {
  PyObject *__pyx_v_params = NULL;
  PyObject *__pyx_v_res = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("isolated_margin_stream_get_listen_key", 0);

  /* "unicorn_binance_rest_api/manager.py":4909
 *         """
 *         params = {
 *             'symbol': symbol             # <<<<<<<<<<<<<<
 *         }
 *         res = self._request_margin_api('post', 'userDataStream/isolated', signed=False, data=params,
*/
  __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4909, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_t_1, __pyx_mstate_global->__pyx_n_u_symbol, __pyx_v_symbol) < 0) __PYX_ERR(0, 4909, __pyx_L1_error)
  __pyx_v_params = ((PyObject*)__pyx_t_1);
  __pyx_t_1 = 0;

  /* "unicorn_binance_rest_api/manager.py":4911
 *             'symbol': symbol
 *         }
 *         res = self._request_margin_api('post', 'userDataStream/isolated', signed=False, data=params,             # <<<<<<<<<<<<<<
 *                                        throw_exception=throw_exception, **kwargs)
 *         if output == "value":
*/
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4911, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_3 = __Pyx_PyDict_NewPresized(3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4911, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  if (PyDict_SetItem(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_signed, Py_False) < 0) __PYX_ERR(0, 4911, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 4911, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":4912
 *         }
 *         res = self._request_margin_api('post', 'userDataStream/isolated', signed=False, data=params,
 *                                        throw_exception=throw_exception, **kwargs)             # <<<<<<<<<<<<<<
 *         if output == "value":
 *             return res['listenKey']
*/
  if (PyDict_SetItem(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_throw_exception, __pyx_v_throw_exception) < 0) __PYX_ERR(0, 4911, __pyx_L1_error)
  __pyx_t_2 = __pyx_t_3;
  __pyx_t_3 = 0;
  if (__Pyx_MergeKeywords(__pyx_t_2, __pyx_v_kwargs) < 0) __PYX_ERR(0, 4912, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":4911
 *             'symbol': symbol
 *         }
 *         res = self._request_margin_api('post', 'userDataStream/isolated', signed=False, data=params,             # <<<<<<<<<<<<<<
 *                                        throw_exception=throw_exception, **kwargs)
 *         if output == "value":
*/
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[54], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4911, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_v_res = __pyx_t_3;
  __pyx_t_3 = 0;

  /* "unicorn_binance_rest_api/manager.py":4913
 *         res = self._request_margin_api('post', 'userDataStream/isolated', signed=False, data=params,
 *                                        throw_exception=throw_exception, **kwargs)
 *         if output == "value":             # <<<<<<<<<<<<<<
 *             return res['listenKey']
 *         elif output == "raw_data":
*/
  __pyx_t_4 = (__Pyx_PyUnicode_Equals(__pyx_v_output, __pyx_mstate_global->__pyx_n_u_value, Py_EQ)); if (unlikely((__pyx_t_4 < 0))) __PYX_ERR(0, 4913, __pyx_L1_error)
  if (__pyx_t_4) {

    /* "unicorn_binance_rest_api/manager.py":4914
 *                                        throw_exception=throw_exception, **kwargs)
 *         if output == "value":
 *             return res['listenKey']             # <<<<<<<<<<<<<<
 *         elif output == "raw_data":
 *             return res
*/
    __Pyx_XDECREF(__pyx_r);
    __pyx_t_3 = __Pyx_PyObject_Dict_GetItem(__pyx_v_res, __pyx_mstate_global->__pyx_n_u_listenKey); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4914, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_r = __pyx_t_3;
    __pyx_t_3 = 0;
    goto __pyx_L0;

    /* "unicorn_binance_rest_api/manager.py":4913
 *         res = self._request_margin_api('post', 'userDataStream/isolated', signed=False, data=params,
 *                                        throw_exception=throw_exception, **kwargs)
 *         if output == "value":             # <<<<<<<<<<<<<<
 *             return res['listenKey']
 *         elif output == "raw_data":
*/
  }

  /* "unicorn_binance_rest_api/manager.py":4915
 *         if output == "value":
 *             return res['listenKey']
 *         elif output == "raw_data":             # <<<<<<<<<<<<<<
 *             return res
 *         else:
*/
  __pyx_t_4 = (__Pyx_PyUnicode_Equals(__pyx_v_output, __pyx_mstate_global->__pyx_n_u_raw_data, Py_EQ)); if (unlikely((__pyx_t_4 < 0))) __PYX_ERR(0, 4915, __pyx_L1_error)
  if (__pyx_t_4) {

    /* "unicorn_binance_rest_api/manager.py":4916
 *             return res['listenKey']
 *         elif output == "raw_data":
 *             return res             # <<<<<<<<<<<<<<
 *         else:
 *             return res['listenKey']
*/
    __Pyx_XDECREF(__pyx_r);
    __Pyx_INCREF(__pyx_v_res);
    __pyx_r = __pyx_v_res;
    goto __pyx_L0;

    /* "unicorn_binance_rest_api/manager.py":4915
 *         if output == "value":
 *             return res['listenKey']
 *         elif output == "raw_data":             # <<<<<<<<<<<<<<
 *             return res
 *         else:
*/
  }

  /* "unicorn_binance_rest_api/manager.py":4918
 *             return res
 *         else:
 *             return res['listenKey']             # <<<<<<<<<<<<<<
 * 
 *     def isolated_margin_stream_keepalive(self, symbol, listenKey, throw_exception=True, **kwargs):
*/
  /*else*/ {
    __Pyx_XDECREF(__pyx_r);
    __pyx_t_3 = __Pyx_PyObject_Dict_GetItem(__pyx_v_res, __pyx_mstate_global->__pyx_n_u_listenKey); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4918, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_r = __pyx_t_3;
    __pyx_t_3 = 0;
    goto __pyx_L0;
  }

  /* "unicorn_binance_rest_api/manager.py":4880
 *     # Isolated margin
 * 
 *     def isolated_margin_stream_get_listen_key(self, symbol, output="value", throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         """Start a new isolated margin data stream and return the listen key
 *         If a stream already exists it should return the same key.
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.isolated_margin_stream_get_listen_key", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_params);
  __Pyx_XDECREF(__pyx_v_res);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":4920
 *             return res['listenKey']
 * 
 *     def isolated_margin_stream_keepalive(self, symbol, listenKey, throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         """PING an isolated margin data stream to prevent a timeout.
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_251isolated_margin_stream_keepalive(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_250isolated_margin_stream_keepalive, "PING an isolated margin data stream to prevent a timeout.\n\n        https://binance-docs.github.io/apidocs/spot/en/#listen-key-isolated-margin\n\n        :param symbol: required - symbol for the isolated margin account\n        :type symbol: str\n        :param listenKey: required\n        :type listenKey: str\n        :param throw_exception: Default `True`, if `False` the raw response will be returned.\n        :type throw_exception: bool\n\n        :returns: API response\n\n        .. code-block:: python\n\n            {}\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_251isolated_margin_stream_keepalive = {"isolated_margin_stream_keepalive", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_251isolated_margin_stream_keepalive, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_250isolated_margin_stream_keepalive};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_251isolated_margin_stream_keepalive(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_symbol = 0;
  PyObject *__pyx_v_listenKey = 0;
  PyObject *__pyx_v_throw_exception = 0;
  PyObject *__pyx_v_kwargs = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[4] = {0,0,0,0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("isolated_margin_stream_keepalive (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_kwargs = PyDict_New(); if (unlikely(!__pyx_v_kwargs)) return NULL;
  __Pyx_GOTREF(__pyx_v_kwargs);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,&__pyx_mstate_global->__pyx_n_u_symbol,&__pyx_mstate_global->__pyx_n_u_listenKey,&__pyx_mstate_global->__pyx_n_u_throw_exception,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 4920, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  4:
        values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 4920, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  3:
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 4920, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 4920, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 4920, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_kwargs, values, kwd_pos_args, __pyx_kwds_len, "isolated_margin_stream_keepalive", 1) < 0) __PYX_ERR(0, 4920, __pyx_L3_error)
      if (!values[3]) values[3] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_True)));
      for (Py_ssize_t i = __pyx_nargs; i < 3; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("isolated_margin_stream_keepalive", 0, 3, 4, i); __PYX_ERR(0, 4920, __pyx_L3_error) }
      }
    } else {
      switch (__pyx_nargs) {
        case  4:
        values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 4920, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  3:
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 4920, __pyx_L3_error)
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 4920, __pyx_L3_error)
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 4920, __pyx_L3_error)
        break;
        default: goto __pyx_L5_argtuple_error;
      }
      if (!values[3]) values[3] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_True)));
    }
    __pyx_v_self = values[0];
    __pyx_v_symbol = values[1];
    __pyx_v_listenKey = values[2];
    __pyx_v_throw_exception = values[3];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("isolated_margin_stream_keepalive", 0, 3, 4, __pyx_nargs); __PYX_ERR(0, 4920, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_kwargs); __pyx_v_kwargs = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.isolated_margin_stream_keepalive", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_250isolated_margin_stream_keepalive(__pyx_self, __pyx_v_self, __pyx_v_symbol, __pyx_v_listenKey, __pyx_v_throw_exception, __pyx_v_kwargs);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_kwargs);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_250isolated_margin_stream_keepalive(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_symbol, PyObject *__pyx_v_listenKey, PyObject *__pyx_v_throw_exception, PyObject *__pyx_v_kwargs) {
  PyObject *__pyx_v_params = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("isolated_margin_stream_keepalive", 0);

  /* "unicorn_binance_rest_api/manager.py":4942
 *         """
 *         params = {
 *             'symbol': symbol,             # <<<<<<<<<<<<<<
 *             'listenKey': listenKey
 *         }
*/
  __pyx_t_1 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4942, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_t_1, __pyx_mstate_global->__pyx_n_u_symbol, __pyx_v_symbol) < 0) __PYX_ERR(0, 4942, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":4943
 *         params = {
 *             'symbol': symbol,
 *             'listenKey': listenKey             # <<<<<<<<<<<<<<
 *         }
 *         return self._request_margin_api('put', 'userDataStream/isolated', signed=False, data=params,
*/
  if (PyDict_SetItem(__pyx_t_1, __pyx_mstate_global->__pyx_n_u_listenKey, __pyx_v_listenKey) < 0) __PYX_ERR(0, 4942, __pyx_L1_error)
  __pyx_v_params = ((PyObject*)__pyx_t_1);
  __pyx_t_1 = 0;

  /* "unicorn_binance_rest_api/manager.py":4945
 *             'listenKey': listenKey
 *         }
 *         return self._request_margin_api('put', 'userDataStream/isolated', signed=False, data=params,             # <<<<<<<<<<<<<<
 *                                         throw_exception=throw_exception, **kwargs)
 * 
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4945, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_3 = __Pyx_PyDict_NewPresized(3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4945, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  if (PyDict_SetItem(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_signed, Py_False) < 0) __PYX_ERR(0, 4945, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 4945, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":4946
 *         }
 *         return self._request_margin_api('put', 'userDataStream/isolated', signed=False, data=params,
 *                                         throw_exception=throw_exception, **kwargs)             # <<<<<<<<<<<<<<
 * 
 *     def isolated_margin_stream_close(self, symbol, listenKey, throw_exception=True, **kwargs):
*/
  if (PyDict_SetItem(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_throw_exception, __pyx_v_throw_exception) < 0) __PYX_ERR(0, 4945, __pyx_L1_error)
  __pyx_t_2 = __pyx_t_3;
  __pyx_t_3 = 0;
  if (__Pyx_MergeKeywords(__pyx_t_2, __pyx_v_kwargs) < 0) __PYX_ERR(0, 4946, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":4945
 *             'listenKey': listenKey
 *         }
 *         return self._request_margin_api('put', 'userDataStream/isolated', signed=False, data=params,             # <<<<<<<<<<<<<<
 *                                         throw_exception=throw_exception, **kwargs)
 * 
*/
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[55], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4945, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":4920
 *             return res['listenKey']
 * 
 *     def isolated_margin_stream_keepalive(self, symbol, listenKey, throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         """PING an isolated margin data stream to prevent a timeout.
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.isolated_margin_stream_keepalive", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_params);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":4948
 *                                         throw_exception=throw_exception, **kwargs)
 * 
 *     def isolated_margin_stream_close(self, symbol, listenKey, throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         """Close out an isolated margin data stream.
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_253isolated_margin_stream_close(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_252isolated_margin_stream_close, "Close out an isolated margin data stream.\n\n        https://binance-docs.github.io/apidocs/spot/en/#listen-key-isolated-margin\n\n        :param symbol: required - symbol for the isolated margin account\n        :type symbol: str\n        :param listenKey: required\n        :type listenKey: str\n        :param throw_exception: Default `True`, if `False` the raw response will be returned.\n        :type throw_exception: bool\n\n        :returns: API response\n\n        .. code-block:: python\n\n            {}\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_253isolated_margin_stream_close = {"isolated_margin_stream_close", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_253isolated_margin_stream_close, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_252isolated_margin_stream_close};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_253isolated_margin_stream_close(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_symbol = 0;
  PyObject *__pyx_v_listenKey = 0;
  PyObject *__pyx_v_throw_exception = 0;
  PyObject *__pyx_v_kwargs = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[4] = {0,0,0,0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("isolated_margin_stream_close (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_kwargs = PyDict_New(); if (unlikely(!__pyx_v_kwargs)) return NULL;
  __Pyx_GOTREF(__pyx_v_kwargs);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,&__pyx_mstate_global->__pyx_n_u_symbol,&__pyx_mstate_global->__pyx_n_u_listenKey,&__pyx_mstate_global->__pyx_n_u_throw_exception,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 4948, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  4:
        values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 4948, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  3:
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 4948, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 4948, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 4948, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_kwargs, values, kwd_pos_args, __pyx_kwds_len, "isolated_margin_stream_close", 1) < 0) __PYX_ERR(0, 4948, __pyx_L3_error)
      if (!values[3]) values[3] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_True)));
      for (Py_ssize_t i = __pyx_nargs; i < 3; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("isolated_margin_stream_close", 0, 3, 4, i); __PYX_ERR(0, 4948, __pyx_L3_error) }
      }
    } else {
      switch (__pyx_nargs) {
        case  4:
        values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 4948, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  3:
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 4948, __pyx_L3_error)
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 4948, __pyx_L3_error)
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 4948, __pyx_L3_error)
        break;
        default: goto __pyx_L5_argtuple_error;
      }
      if (!values[3]) values[3] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_True)));
    }
    __pyx_v_self = values[0];
    __pyx_v_symbol = values[1];
    __pyx_v_listenKey = values[2];
    __pyx_v_throw_exception = values[3];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("isolated_margin_stream_close", 0, 3, 4, __pyx_nargs); __PYX_ERR(0, 4948, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_kwargs); __pyx_v_kwargs = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.isolated_margin_stream_close", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_252isolated_margin_stream_close(__pyx_self, __pyx_v_self, __pyx_v_symbol, __pyx_v_listenKey, __pyx_v_throw_exception, __pyx_v_kwargs);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_kwargs);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_252isolated_margin_stream_close(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_symbol, PyObject *__pyx_v_listenKey, PyObject *__pyx_v_throw_exception, PyObject *__pyx_v_kwargs) {
  PyObject *__pyx_v_params = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("isolated_margin_stream_close", 0);

  /* "unicorn_binance_rest_api/manager.py":4970
 *         """
 *         params = {
 *             'symbol': symbol,             # <<<<<<<<<<<<<<
 *             'listenKey': listenKey
 *         }
*/
  __pyx_t_1 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4970, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_t_1, __pyx_mstate_global->__pyx_n_u_symbol, __pyx_v_symbol) < 0) __PYX_ERR(0, 4970, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":4971
 *         params = {
 *             'symbol': symbol,
 *             'listenKey': listenKey             # <<<<<<<<<<<<<<
 *         }
 *         return self._request_margin_api('delete', 'userDataStream/isolated', signed=False, data=params,
*/
  if (PyDict_SetItem(__pyx_t_1, __pyx_mstate_global->__pyx_n_u_listenKey, __pyx_v_listenKey) < 0) __PYX_ERR(0, 4970, __pyx_L1_error)
  __pyx_v_params = ((PyObject*)__pyx_t_1);
  __pyx_t_1 = 0;

  /* "unicorn_binance_rest_api/manager.py":4973
 *             'listenKey': listenKey
 *         }
 *         return self._request_margin_api('delete', 'userDataStream/isolated', signed=False, data=params,             # <<<<<<<<<<<<<<
 *                                         throw_exception=throw_exception, **kwargs)
 * 
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4973, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_3 = __Pyx_PyDict_NewPresized(3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4973, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  if (PyDict_SetItem(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_signed, Py_False) < 0) __PYX_ERR(0, 4973, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 4973, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":4974
 *         }
 *         return self._request_margin_api('delete', 'userDataStream/isolated', signed=False, data=params,
 *                                         throw_exception=throw_exception, **kwargs)             # <<<<<<<<<<<<<<
 * 
 *     # Lending Endpoints
*/
  if (PyDict_SetItem(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_throw_exception, __pyx_v_throw_exception) < 0) __PYX_ERR(0, 4973, __pyx_L1_error)
  __pyx_t_2 = __pyx_t_3;
  __pyx_t_3 = 0;
  if (__Pyx_MergeKeywords(__pyx_t_2, __pyx_v_kwargs) < 0) __PYX_ERR(0, 4974, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":4973
 *             'listenKey': listenKey
 *         }
 *         return self._request_margin_api('delete', 'userDataStream/isolated', signed=False, data=params,             # <<<<<<<<<<<<<<
 *                                         throw_exception=throw_exception, **kwargs)
 * 
*/
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[56], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4973, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":4948
 *                                         throw_exception=throw_exception, **kwargs)
 * 
 *     def isolated_margin_stream_close(self, symbol, listenKey, throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         """Close out an isolated margin data stream.
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.isolated_margin_stream_close", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_params);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":4978
 *     # Lending Endpoints
 * 
 *     def get_lending_product_list(self, **params):             # <<<<<<<<<<<<<<
 *         """Get Lending Product List
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_255get_lending_product_list(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_254get_lending_product_list, "Get Lending Product List\n\n        https://binance-docs.github.io/apidocs/spot/en/#get-flexible-product-list-user_data\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_255get_lending_product_list = {"get_lending_product_list", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_255get_lending_product_list, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_254get_lending_product_list};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_255get_lending_product_list(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_lending_product_list (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 4978, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 4978, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "get_lending_product_list", 1) < 0) __PYX_ERR(0, 4978, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_lending_product_list", 1, 1, 1, i); __PYX_ERR(0, 4978, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 4978, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_lending_product_list", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 4978, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_lending_product_list", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_254get_lending_product_list(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_254get_lending_product_list(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_lending_product_list", 0);

  /* "unicorn_binance_rest_api/manager.py":4984
 * 
 *         """
 *         return self._request_margin_api('get', 'lending/daily/product/list', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_lending_daily_quota_left(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4984, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 4984, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_signed, Py_True) < 0) __PYX_ERR(0, 4984, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 4984, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[57], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4984, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":4978
 *     # Lending Endpoints
 * 
 *     def get_lending_product_list(self, **params):             # <<<<<<<<<<<<<<
 *         """Get Lending Product List
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_lending_product_list", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":4986
 *         return self._request_margin_api('get', 'lending/daily/product/list', signed=True, data=params)
 * 
 *     def get_lending_daily_quota_left(self, **params):             # <<<<<<<<<<<<<<
 *         """Get Left Daily Purchase Quota of Flexible Product.
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_257get_lending_daily_quota_left(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_256get_lending_daily_quota_left, "Get Left Daily Purchase Quota of Flexible Product.\n\n        https://binance-docs.github.io/apidocs/spot/en/#get-left-daily-purchase-quota-of-flexible-product-user_data\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_257get_lending_daily_quota_left = {"get_lending_daily_quota_left", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_257get_lending_daily_quota_left, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_256get_lending_daily_quota_left};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_257get_lending_daily_quota_left(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_lending_daily_quota_left (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 4986, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 4986, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "get_lending_daily_quota_left", 1) < 0) __PYX_ERR(0, 4986, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_lending_daily_quota_left", 1, 1, 1, i); __PYX_ERR(0, 4986, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 4986, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_lending_daily_quota_left", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 4986, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_lending_daily_quota_left", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_256get_lending_daily_quota_left(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_256get_lending_daily_quota_left(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_lending_daily_quota_left", 0);

  /* "unicorn_binance_rest_api/manager.py":4992
 * 
 *         """
 *         return self._request_margin_api('get', 'lending/daily/userLeftQuota', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def purchase_lending_product(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4992, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 4992, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_signed, Py_True) < 0) __PYX_ERR(0, 4992, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 4992, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[58], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4992, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":4986
 *         return self._request_margin_api('get', 'lending/daily/product/list', signed=True, data=params)
 * 
 *     def get_lending_daily_quota_left(self, **params):             # <<<<<<<<<<<<<<
 *         """Get Left Daily Purchase Quota of Flexible Product.
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_lending_daily_quota_left", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":4994
 *         return self._request_margin_api('get', 'lending/daily/userLeftQuota', signed=True, data=params)
 * 
 *     def purchase_lending_product(self, **params):             # <<<<<<<<<<<<<<
 *         """Purchase Flexible Product
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_259purchase_lending_product(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_258purchase_lending_product, "Purchase Flexible Product\n\n        https://binance-docs.github.io/apidocs/spot/en/#purchase-flexible-product-user_data\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_259purchase_lending_product = {"purchase_lending_product", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_259purchase_lending_product, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_258purchase_lending_product};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_259purchase_lending_product(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("purchase_lending_product (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 4994, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 4994, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "purchase_lending_product", 1) < 0) __PYX_ERR(0, 4994, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("purchase_lending_product", 1, 1, 1, i); __PYX_ERR(0, 4994, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 4994, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("purchase_lending_product", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 4994, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.purchase_lending_product", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_258purchase_lending_product(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_258purchase_lending_product(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("purchase_lending_product", 0);

  /* "unicorn_binance_rest_api/manager.py":5000
 * 
 *         """
 *         return self._request_margin_api('post', 'lending/daily/purchase', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_lending_daily_redemption_quota(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5000, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 5000, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_signed, Py_True) < 0) __PYX_ERR(0, 5000, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 5000, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[59], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5000, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":4994
 *         return self._request_margin_api('get', 'lending/daily/userLeftQuota', signed=True, data=params)
 * 
 *     def purchase_lending_product(self, **params):             # <<<<<<<<<<<<<<
 *         """Purchase Flexible Product
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.purchase_lending_product", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":5002
 *         return self._request_margin_api('post', 'lending/daily/purchase', signed=True, data=params)
 * 
 *     def get_lending_daily_redemption_quota(self, **params):             # <<<<<<<<<<<<<<
 *         """Get Left Daily Redemption Quota of Flexible Product
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_261get_lending_daily_redemption_quota(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_260get_lending_daily_redemption_quota, "Get Left Daily Redemption Quota of Flexible Product\n\n        https://binance-docs.github.io/apidocs/spot/en/#get-left-daily-redemption-quota-of-flexible-product-user_data\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_261get_lending_daily_redemption_quota = {"get_lending_daily_redemption_quota", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_261get_lending_daily_redemption_quota, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_260get_lending_daily_redemption_quota};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_261get_lending_daily_redemption_quota(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_lending_daily_redemption_quota (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 5002, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 5002, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "get_lending_daily_redemption_quota", 1) < 0) __PYX_ERR(0, 5002, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_lending_daily_redemption_quota", 1, 1, 1, i); __PYX_ERR(0, 5002, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 5002, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_lending_daily_redemption_quota", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 5002, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_lending_daily_redemption_quota", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_260get_lending_daily_redemption_quota(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_260get_lending_daily_redemption_quota(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_lending_daily_redemption_quota", 0);

  /* "unicorn_binance_rest_api/manager.py":5008
 * 
 *         """
 *         return self._request_margin_api('get', 'lending/daily/userRedemptionQuota', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def redeem_lending_product(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5008, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 5008, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_signed, Py_True) < 0) __PYX_ERR(0, 5008, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 5008, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[60], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5008, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":5002
 *         return self._request_margin_api('post', 'lending/daily/purchase', signed=True, data=params)
 * 
 *     def get_lending_daily_redemption_quota(self, **params):             # <<<<<<<<<<<<<<
 *         """Get Left Daily Redemption Quota of Flexible Product
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_lending_daily_redemption_quota", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":5010
 *         return self._request_margin_api('get', 'lending/daily/userRedemptionQuota', signed=True, data=params)
 * 
 *     def redeem_lending_product(self, **params):             # <<<<<<<<<<<<<<
 *         """Redeem Flexible Product
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_263redeem_lending_product(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_262redeem_lending_product, "Redeem Flexible Product\n\n        https://binance-docs.github.io/apidocs/spot/en/#redeem-flexible-product-user_data\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_263redeem_lending_product = {"redeem_lending_product", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_263redeem_lending_product, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_262redeem_lending_product};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_263redeem_lending_product(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("redeem_lending_product (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 5010, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 5010, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "redeem_lending_product", 1) < 0) __PYX_ERR(0, 5010, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("redeem_lending_product", 1, 1, 1, i); __PYX_ERR(0, 5010, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 5010, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("redeem_lending_product", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 5010, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.redeem_lending_product", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_262redeem_lending_product(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_262redeem_lending_product(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("redeem_lending_product", 0);

  /* "unicorn_binance_rest_api/manager.py":5016
 * 
 *         """
 *         return self._request_margin_api('post', 'lending/daily/redeem', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_lending_position(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5016, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 5016, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_signed, Py_True) < 0) __PYX_ERR(0, 5016, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 5016, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[61], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5016, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":5010
 *         return self._request_margin_api('get', 'lending/daily/userRedemptionQuota', signed=True, data=params)
 * 
 *     def redeem_lending_product(self, **params):             # <<<<<<<<<<<<<<
 *         """Redeem Flexible Product
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.redeem_lending_product", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":5018
 *         return self._request_margin_api('post', 'lending/daily/redeem', signed=True, data=params)
 * 
 *     def get_lending_position(self, **params):             # <<<<<<<<<<<<<<
 *         """Get Flexible Product Position
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_265get_lending_position(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_264get_lending_position, "Get Flexible Product Position\n\n        https://binance-docs.github.io/apidocs/spot/en/#get-flexible-product-position-user_data\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_265get_lending_position = {"get_lending_position", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_265get_lending_position, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_264get_lending_position};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_265get_lending_position(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_lending_position (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 5018, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 5018, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "get_lending_position", 1) < 0) __PYX_ERR(0, 5018, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_lending_position", 1, 1, 1, i); __PYX_ERR(0, 5018, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 5018, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_lending_position", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 5018, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_lending_position", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_264get_lending_position(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_264get_lending_position(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_lending_position", 0);

  /* "unicorn_binance_rest_api/manager.py":5024
 * 
 *         """
 *         return self._request_margin_api('get', 'lending/daily/token/position', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_fixed_activity_project_list(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5024, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 5024, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_signed, Py_True) < 0) __PYX_ERR(0, 5024, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 5024, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[62], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5024, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":5018
 *         return self._request_margin_api('post', 'lending/daily/redeem', signed=True, data=params)
 * 
 *     def get_lending_position(self, **params):             # <<<<<<<<<<<<<<
 *         """Get Flexible Product Position
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_lending_position", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":5026
 *         return self._request_margin_api('get', 'lending/daily/token/position', signed=True, data=params)
 * 
 *     def get_fixed_activity_project_list(self, **params):             # <<<<<<<<<<<<<<
 *         """Get Fixed and Activity Project List
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_267get_fixed_activity_project_list(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_266get_fixed_activity_project_list, "Get Fixed and Activity Project List\n\n        https://binance-docs.github.io/apidocs/spot/en/#get-fixed-and-activity-project-list-user_data\n\n        :param asset: optional\n        :type asset: str\n        :param type: required - \"ACTIVITY\", \"CUSTOMIZED_FIXED\"\n        :type type: str\n        :param status: optional - \"ALL\", \"SUBSCRIBABLE\", \"UNSUBSCRIBABLE\"; default \"ALL\"\n        :type status: str\n        :param sortBy: optional - \"START_TIME\", \"LOT_SIZE\", \"INTEREST_RATE\", \"DURATION\"; default \"START_TIME\"\n        :type sortBy: str\n        :param current: optional - Currently querying page. Start from 1. Default:1\n        :type current: int\n        :param size: optional - Default:10, Max:100\n        :type size: int\n        :param recvWindow: the number of milliseconds the request is valid for\n        :type recvWindow: int\n\n        :return: API response\n\n        .. code-block:: python\n\n            [\n                {\n                    \"asset\": \"USDT\",\n                    \"displayPriority\": 1,\n                    \"duration\": 90,\n                    \"interestPerLot\": \"1.35810000\",\n                    \"interestRate\": \"0.05510000\",\n                    \"lotSize\": \"100.00000000\",\n                    \"lotsLowLimit\": 1,\n                    \"lotsPurchased\": 74155,\n                    \"lotsUpLimit\": 80000,\n                    \"maxLotsPerUser\": 2000,\n                    \"needKyc\": False,\n                    \"projectId\": \"CUSDT90DAYSS001\",\n                    \"projectName\": \"USDT\",\n                    \"status\": \"PURCHASING\",\n                    \"type\": \"CUSTOMIZED_FIXED\",\n                    \"withAreaLimitation\": False\n                }\n            ]\n\n        :raises: BinanceRequestException, BinanceAPIException\n        \n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_267get_fixed_activity_project_list = {"get_fixed_activity_project_list", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_267get_fixed_activity_project_list, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_266get_fixed_activity_project_list};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_267get_fixed_activity_project_list(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_fixed_activity_project_list (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 5026, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 5026, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "get_fixed_activity_project_list", 1) < 0) __PYX_ERR(0, 5026, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_fixed_activity_project_list", 1, 1, 1, i); __PYX_ERR(0, 5026, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 5026, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_fixed_activity_project_list", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 5026, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_fixed_activity_project_list", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_266get_fixed_activity_project_list(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_266get_fixed_activity_project_list(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_fixed_activity_project_list", 0);

  /* "unicorn_binance_rest_api/manager.py":5074
 * 
 *         """
 *         return self._request_margin_api('get', 'lending/project/list', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_lending_account(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5074, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 5074, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_signed, Py_True) < 0) __PYX_ERR(0, 5074, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 5074, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[63], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5074, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":5026
 *         return self._request_margin_api('get', 'lending/daily/token/position', signed=True, data=params)
 * 
 *     def get_fixed_activity_project_list(self, **params):             # <<<<<<<<<<<<<<
 *         """Get Fixed and Activity Project List
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_fixed_activity_project_list", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":5076
 *         return self._request_margin_api('get', 'lending/project/list', signed=True, data=params)
 * 
 *     def get_lending_account(self, **params):             # <<<<<<<<<<<<<<
 *         """Get Lending Account Details
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_269get_lending_account(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_268get_lending_account, "Get Lending Account Details\n\n        https://binance-docs.github.io/apidocs/spot/en/#lending-account-user_data\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_269get_lending_account = {"get_lending_account", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_269get_lending_account, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_268get_lending_account};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_269get_lending_account(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_lending_account (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 5076, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 5076, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "get_lending_account", 1) < 0) __PYX_ERR(0, 5076, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_lending_account", 1, 1, 1, i); __PYX_ERR(0, 5076, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 5076, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_lending_account", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 5076, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_lending_account", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_268get_lending_account(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_268get_lending_account(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_lending_account", 0);

  /* "unicorn_binance_rest_api/manager.py":5082
 * 
 *         """
 *         return self._request_margin_api('get', 'lending/union/account', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_lending_purchase_history(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5082, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 5082, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_signed, Py_True) < 0) __PYX_ERR(0, 5082, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 5082, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[64], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5082, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":5076
 *         return self._request_margin_api('get', 'lending/project/list', signed=True, data=params)
 * 
 *     def get_lending_account(self, **params):             # <<<<<<<<<<<<<<
 *         """Get Lending Account Details
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_lending_account", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":5084
 *         return self._request_margin_api('get', 'lending/union/account', signed=True, data=params)
 * 
 *     def get_lending_purchase_history(self, **params):             # <<<<<<<<<<<<<<
 *         """Get Lending Purchase History
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_271get_lending_purchase_history(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_270get_lending_purchase_history, "Get Lending Purchase History\n\n        https://binance-docs.github.io/apidocs/spot/en/#get-purchase-record-user_data\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_271get_lending_purchase_history = {"get_lending_purchase_history", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_271get_lending_purchase_history, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_270get_lending_purchase_history};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_271get_lending_purchase_history(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_lending_purchase_history (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 5084, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 5084, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "get_lending_purchase_history", 1) < 0) __PYX_ERR(0, 5084, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_lending_purchase_history", 1, 1, 1, i); __PYX_ERR(0, 5084, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 5084, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_lending_purchase_history", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 5084, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_lending_purchase_history", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_270get_lending_purchase_history(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_270get_lending_purchase_history(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_lending_purchase_history", 0);

  /* "unicorn_binance_rest_api/manager.py":5090
 * 
 *         """
 *         return self._request_margin_api('get', 'lending/union/purchaseRecord', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_lending_redemption_history(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5090, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 5090, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_signed, Py_True) < 0) __PYX_ERR(0, 5090, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 5090, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[65], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5090, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":5084
 *         return self._request_margin_api('get', 'lending/union/account', signed=True, data=params)
 * 
 *     def get_lending_purchase_history(self, **params):             # <<<<<<<<<<<<<<
 *         """Get Lending Purchase History
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_lending_purchase_history", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":5092
 *         return self._request_margin_api('get', 'lending/union/purchaseRecord', signed=True, data=params)
 * 
 *     def get_lending_redemption_history(self, **params):             # <<<<<<<<<<<<<<
 *         """Get Lending Redemption History
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_273get_lending_redemption_history(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_272get_lending_redemption_history, "Get Lending Redemption History\n\n        https://binance-docs.github.io/apidocs/spot/en/#get-redemption-record-user_data\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_273get_lending_redemption_history = {"get_lending_redemption_history", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_273get_lending_redemption_history, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_272get_lending_redemption_history};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_273get_lending_redemption_history(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_lending_redemption_history (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 5092, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 5092, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "get_lending_redemption_history", 1) < 0) __PYX_ERR(0, 5092, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_lending_redemption_history", 1, 1, 1, i); __PYX_ERR(0, 5092, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 5092, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_lending_redemption_history", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 5092, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_lending_redemption_history", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_272get_lending_redemption_history(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_272get_lending_redemption_history(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_lending_redemption_history", 0);

  /* "unicorn_binance_rest_api/manager.py":5098
 * 
 *         """
 *         return self._request_margin_api('get', 'lending/union/redemptionRecord', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_lending_interest_history(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5098, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 5098, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_signed, Py_True) < 0) __PYX_ERR(0, 5098, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 5098, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[66], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5098, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":5092
 *         return self._request_margin_api('get', 'lending/union/purchaseRecord', signed=True, data=params)
 * 
 *     def get_lending_redemption_history(self, **params):             # <<<<<<<<<<<<<<
 *         """Get Lending Redemption History
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_lending_redemption_history", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":5100
 *         return self._request_margin_api('get', 'lending/union/redemptionRecord', signed=True, data=params)
 * 
 *     def get_lending_interest_history(self, **params):             # <<<<<<<<<<<<<<
 *         """Get Lending Interest History
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_275get_lending_interest_history(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_274get_lending_interest_history, "Get Lending Interest History\n\n        https://binance-docs.github.io/apidocs/spot/en/#get-interest-history-user_data-2\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_275get_lending_interest_history = {"get_lending_interest_history", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_275get_lending_interest_history, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_274get_lending_interest_history};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_275get_lending_interest_history(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_lending_interest_history (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 5100, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 5100, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "get_lending_interest_history", 1) < 0) __PYX_ERR(0, 5100, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_lending_interest_history", 1, 1, 1, i); __PYX_ERR(0, 5100, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 5100, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_lending_interest_history", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 5100, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_lending_interest_history", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_274get_lending_interest_history(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_274get_lending_interest_history(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_lending_interest_history", 0);

  /* "unicorn_binance_rest_api/manager.py":5106
 * 
 *         """
 *         return self._request_margin_api('get', 'lending/union/interestHistory', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def change_fixed_activity_to_daily_position(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5106, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 5106, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_signed, Py_True) < 0) __PYX_ERR(0, 5106, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 5106, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[67], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5106, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":5100
 *         return self._request_margin_api('get', 'lending/union/redemptionRecord', signed=True, data=params)
 * 
 *     def get_lending_interest_history(self, **params):             # <<<<<<<<<<<<<<
 *         """Get Lending Interest History
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_lending_interest_history", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":5108
 *         return self._request_margin_api('get', 'lending/union/interestHistory', signed=True, data=params)
 * 
 *     def change_fixed_activity_to_daily_position(self, **params):             # <<<<<<<<<<<<<<
 *         """Change Fixed/Activity Position to Daily Position
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_277change_fixed_activity_to_daily_position(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_276change_fixed_activity_to_daily_position, "Change Fixed/Activity Position to Daily Position\n\n        https://binance-docs.github.io/apidocs/spot/en/#change-fixed-activity-position-to-daily-position-user_data\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_277change_fixed_activity_to_daily_position = {"change_fixed_activity_to_daily_position", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_277change_fixed_activity_to_daily_position, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_276change_fixed_activity_to_daily_position};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_277change_fixed_activity_to_daily_position(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("change_fixed_activity_to_daily_position (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 5108, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 5108, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "change_fixed_activity_to_daily_position", 1) < 0) __PYX_ERR(0, 5108, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("change_fixed_activity_to_daily_position", 1, 1, 1, i); __PYX_ERR(0, 5108, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 5108, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("change_fixed_activity_to_daily_position", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 5108, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.change_fixed_activity_to_daily_position", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_276change_fixed_activity_to_daily_position(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_276change_fixed_activity_to_daily_position(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("change_fixed_activity_to_daily_position", 0);

  /* "unicorn_binance_rest_api/manager.py":5114
 * 
 *         """
 *         return self._request_margin_api('post', 'lending/positionChanged', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     # Sub Accounts
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5114, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 5114, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_signed, Py_True) < 0) __PYX_ERR(0, 5114, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 5114, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[68], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5114, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":5108
 *         return self._request_margin_api('get', 'lending/union/interestHistory', signed=True, data=params)
 * 
 *     def change_fixed_activity_to_daily_position(self, **params):             # <<<<<<<<<<<<<<
 *         """Change Fixed/Activity Position to Daily Position
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.change_fixed_activity_to_daily_position", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":5118
 *     # Sub Accounts
 * 
 *     def get_sub_account_list(self, **params):             # <<<<<<<<<<<<<<
 *         """Query Sub-account List.
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_279get_sub_account_list(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_278get_sub_account_list, "Query Sub-account List.\n\n        https://binance-docs.github.io/apidocs/spot/en/#query-sub-account-list-sapi-for-master-account\n\n        :param email: optional - Sub-account email\n        :type email: str\n        :param isFreeze: optional\n        :type isFreeze: str\n        :param page: optional - Default value: 1\n        :param limit: optional - Default value: 1, Max value: 200\n        :type limit: int\n        :param recvWindow: optional\n        :type recvWindow: int\n\n        :returns: API response\n\n        .. code-block:: python\n\n            {\n                \"subAccounts\":[\n                    {\n                        \"email\":\"testsub@gmail.com\",\n                        \"isFreeze\":false,\n                        \"createTime\":1544433328000\n                    },\n                    {\n                        \"email\":\"virtual@oxebmvfonoemail.com\",\n                        \"isFreeze\":false,\n                        \"createTime\":1544433328000\n                    }\n                ]\n            }\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_279get_sub_account_list = {"get_sub_account_list", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_279get_sub_account_list, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_278get_sub_account_list};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_279get_sub_account_list(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_sub_account_list (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 5118, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 5118, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "get_sub_account_list", 1) < 0) __PYX_ERR(0, 5118, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_sub_account_list", 1, 1, 1, i); __PYX_ERR(0, 5118, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 5118, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_sub_account_list", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 5118, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_sub_account_list", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_278get_sub_account_list(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_278get_sub_account_list(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_sub_account_list", 0);

  /* "unicorn_binance_rest_api/manager.py":5155
 * 
 *         """
 *         return self._request_margin_api('get', 'sub-account/list', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_sub_account_transfer_history(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5155, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 5155, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 5155, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[69], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5155, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":5118
 *     # Sub Accounts
 * 
 *     def get_sub_account_list(self, **params):             # <<<<<<<<<<<<<<
 *         """Query Sub-account List.
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_sub_account_list", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":5157
 *         return self._request_margin_api('get', 'sub-account/list', True, data=params)
 * 
 *     def get_sub_account_transfer_history(self, **params):             # <<<<<<<<<<<<<<
 *         """Query Sub-account Transfer History.
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_281get_sub_account_transfer_history(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_280get_sub_account_transfer_history, "Query Sub-account Transfer History.\n\n        https://binance-docs.github.io/apidocs/spot/en/#query-sub-account-spot-asset-transfer-history-sapi-for-master-account\n\n        :param fromEmail: optional\n        :type fromEmail: str\n        :param toEmail: optional\n        :type toEmail: str\n        :param startTime: optional\n        :type startTime: int\n        :param endTime: optional\n        :type endTime: int\n        :param page: optional - Default value: 1\n        :type page: int\n        :param limit: optional - Default value: 500\n        :type limit: int\n        :param recvWindow: optional\n        :type recvWindow: int\n\n        :returns: API response\n\n        .. code-block:: python\n\n            [\n                {\n                    \"from\":\"aaa@test.com\",\n                    \"to\":\"bbb@test.com\",\n                    \"asset\":\"BTC\",\n                    \"qty\":\"10\",\n                    \"status\": \"SUCCESS\",\n                    \"tranId\": 6489943656,\n                    \"time\":1544433328000\n                },\n                {\n                    \"from\":\"bbb@test.com\",\n                    \"to\":\"ccc@test.com\",\n                    \"asset\":\"ETH\",\n                    \"qty\":\"2\",\n                    \"status\": \"SUCCESS\",\n                    \"tranId\": 6489938713,\n                    \"time\":1544433328000\n                }\n            ]\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_281get_sub_account_transfer_history = {"get_sub_account_transfer_history", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_281get_sub_account_transfer_history, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_280get_sub_account_transfer_history};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_281get_sub_account_transfer_history(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_sub_account_transfer_history (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 5157, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 5157, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "get_sub_account_transfer_history", 1) < 0) __PYX_ERR(0, 5157, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_sub_account_transfer_history", 1, 1, 1, i); __PYX_ERR(0, 5157, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 5157, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_sub_account_transfer_history", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 5157, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_sub_account_transfer_history", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_280get_sub_account_transfer_history(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_280get_sub_account_transfer_history(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_sub_account_transfer_history", 0);

  /* "unicorn_binance_rest_api/manager.py":5205
 * 
 *         """
 *         return self._request_margin_api('get', 'sub-account/sub/transfer/history', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_sub_account_futures_transfer_history(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5205, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 5205, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 5205, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[70], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5205, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":5157
 *         return self._request_margin_api('get', 'sub-account/list', True, data=params)
 * 
 *     def get_sub_account_transfer_history(self, **params):             # <<<<<<<<<<<<<<
 *         """Query Sub-account Transfer History.
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_sub_account_transfer_history", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":5207
 *         return self._request_margin_api('get', 'sub-account/sub/transfer/history', True, data=params)
 * 
 *     def get_sub_account_futures_transfer_history(self, **params):             # <<<<<<<<<<<<<<
 *         """Query Sub-account Futures Transfer History.
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_283get_sub_account_futures_transfer_history(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_282get_sub_account_futures_transfer_history, "Query Sub-account Futures Transfer History.\n\n        https://binance-docs.github.io/apidocs/spot/en/#query-sub-account-futures-asset-transfer-history-for-master-account\n\n        :param email: required\n        :type email: str\n        :param futuresType: required\n        :type futuresType: int\n        :param startTime: optional\n        :type startTime: int\n        :param endTime: optional\n        :type endTime: int\n        :param page: optional\n        :type page: int\n        :param limit: optional\n        :type limit: int\n        :param recvWindow: optional\n        :type recvWindow: int\n\n        :returns: API response\n\n        .. code-block:: python\n\n            {\n                \"success\":true,\n                \"futuresType\": 2,\n                \"transfers\":[\n                    {\n                        \"from\":\"aaa@test.com\",\n                        \"to\":\"bbb@test.com\",\n                        \"asset\":\"BTC\",\n                        \"qty\":\"1\",\n                        \"time\":1544433328000\n                    },\n                    {\n                        \"from\":\"bbb@test.com\",\n                        \"to\":\"ccc@test.com\",\n                        \"asset\":\"ETH\",\n                        \"qty\":\"2\",\n                        \"time\":1544433328000\n                    }\n                ]\n            }\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_283get_sub_account_futures_transfer_history = {"get_sub_account_futures_transfer_history", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_283get_sub_account_futures_transfer_history, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_282get_sub_account_futures_transfer_history};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_283get_sub_account_futures_transfer_history(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_sub_account_futures_transfer_history (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 5207, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 5207, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "get_sub_account_futures_transfer_history", 1) < 0) __PYX_ERR(0, 5207, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_sub_account_futures_transfer_history", 1, 1, 1, i); __PYX_ERR(0, 5207, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 5207, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_sub_account_futures_transfer_history", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 5207, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_sub_account_futures_transfer_history", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_282get_sub_account_futures_transfer_history(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_282get_sub_account_futures_transfer_history(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_sub_account_futures_transfer_history", 0);

  /* "unicorn_binance_rest_api/manager.py":5255
 * 
 *         """
 *         return self._request_margin_api('get', 'sub-account/futures/internalTransfer', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def create_sub_account_futures_transfer(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5255, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 5255, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 5255, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[71], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5255, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":5207
 *         return self._request_margin_api('get', 'sub-account/sub/transfer/history', True, data=params)
 * 
 *     def get_sub_account_futures_transfer_history(self, **params):             # <<<<<<<<<<<<<<
 *         """Query Sub-account Futures Transfer History.
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_sub_account_futures_transfer_history", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":5257
 *         return self._request_margin_api('get', 'sub-account/futures/internalTransfer', True, data=params)
 * 
 *     def create_sub_account_futures_transfer(self, **params):             # <<<<<<<<<<<<<<
 *         """Execute sub-account Futures transfer
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_285create_sub_account_futures_transfer(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_284create_sub_account_futures_transfer, "Execute sub-account Futures transfer\n\n        https://github.com/binance-exchange/binance-official-api-docs/blob/9dbe0e961b80557bb19708a707c7fad08842b28e/wapi-api.md#sub-account-transferfor-master-account\n\n        :param fromEmail: required - Sender email\n        :type fromEmail: str\n        :param toEmail: required - Recipient email\n        :type toEmail: str\n        :param futuresType: required\n        :type futuresType: int\n        :param asset: required\n        :type asset: str\n        :param amount: required\n        :type amount: decimal\n        :param recvWindow: optional\n        :type recvWindow: int\n\n        :returns: API response\n\n        .. code-block:: python\n\n           {\n                \"success\":true,\n                \"txnId\":\"2934662589\"\n            }\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_285create_sub_account_futures_transfer = {"create_sub_account_futures_transfer", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_285create_sub_account_futures_transfer, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_284create_sub_account_futures_transfer};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_285create_sub_account_futures_transfer(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("create_sub_account_futures_transfer (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 5257, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 5257, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "create_sub_account_futures_transfer", 1) < 0) __PYX_ERR(0, 5257, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("create_sub_account_futures_transfer", 1, 1, 1, i); __PYX_ERR(0, 5257, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 5257, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("create_sub_account_futures_transfer", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 5257, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.create_sub_account_futures_transfer", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_284create_sub_account_futures_transfer(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_284create_sub_account_futures_transfer(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("create_sub_account_futures_transfer", 0);

  /* "unicorn_binance_rest_api/manager.py":5287
 * 
 *         """
 *         return self._request_margin_api('post', 'sub-account/futures/internalTransfer', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_sub_account_assets(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5287, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 5287, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 5287, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[72], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5287, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":5257
 *         return self._request_margin_api('get', 'sub-account/futures/internalTransfer', True, data=params)
 * 
 *     def create_sub_account_futures_transfer(self, **params):             # <<<<<<<<<<<<<<
 *         """Execute sub-account Futures transfer
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.create_sub_account_futures_transfer", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":5289
 *         return self._request_margin_api('post', 'sub-account/futures/internalTransfer', True, data=params)
 * 
 *     def get_sub_account_assets(self, **params):             # <<<<<<<<<<<<<<
 *         """Fetch sub-account assets
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_287get_sub_account_assets(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_286get_sub_account_assets, "Fetch sub-account assets\n\n         https://binance-docs.github.io/apidocs/spot/en/#query-sub-account-assets-sapi-for-master-account\n\n        :param email: required\n        :type email: str\n        :param recvWindow: optional\n        :type recvWindow: int\n\n        :returns: API response\n\n        .. code-block:: python\n\n            {\n                \"balances\":[\n                    {\n                        \"asset\":\"ADA\",\n                        \"free\":10000,\n                        \"locked\":0\n                    },\n                    {\n                        \"asset\":\"BNB\",\n                        \"free\":10003,\n                        \"locked\":0\n                    },\n                    {\n                        \"asset\":\"BTC\",\n                        \"free\":11467.6399,\n                        \"locked\":0\n                    },\n                    {\n                        \"asset\":\"ETH\",\n                        \"free\":10004.995,\n                        \"locked\":0\n                    },\n                    {\n                        \"asset\":\"USDT\",\n                        \"free\":11652.14213,\n                        \"locked\":0\n                    }\n                ]\n            }\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_287get_sub_account_assets = {"get_sub_account_assets", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_287get_sub_account_assets, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_286get_sub_account_assets};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_287get_sub_account_assets(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_sub_account_assets (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 5289, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 5289, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "get_sub_account_assets", 1) < 0) __PYX_ERR(0, 5289, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_sub_account_assets", 1, 1, 1, i); __PYX_ERR(0, 5289, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 5289, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_sub_account_assets", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 5289, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_sub_account_assets", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_286get_sub_account_assets(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_286get_sub_account_assets(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_sub_account_assets", 0);

  /* "unicorn_binance_rest_api/manager.py":5336
 * 
 *         """
 *         return self._request_margin_api('get', 'sub-account/assets', True, data=params, version='v3')             # <<<<<<<<<<<<<<
 * 
 *     def query_subaccount_spot_summary(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5336, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 5336, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 5336, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_version_2, __pyx_mstate_global->__pyx_n_u_v3) < 0) __PYX_ERR(0, 5336, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[73], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5336, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":5289
 *         return self._request_margin_api('post', 'sub-account/futures/internalTransfer', True, data=params)
 * 
 *     def get_sub_account_assets(self, **params):             # <<<<<<<<<<<<<<
 *         """Fetch sub-account assets
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_sub_account_assets", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":5338
 *         return self._request_margin_api('get', 'sub-account/assets', True, data=params, version='v3')
 * 
 *     def query_subaccount_spot_summary(self, **params):             # <<<<<<<<<<<<<<
 *         """Query Sub-account Spot Assets Summary (For Master Account)
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_289query_subaccount_spot_summary(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_288query_subaccount_spot_summary, "Query Sub-account Spot Assets Summary (For Master Account)\n\n        https://binance-docs.github.io/apidocs/spot/en/#query-sub-account-spot-assets-summary-for-master-account\n\n        :param email: optional - Sub account email\n        :type email: str\n        :param page: optional - default 1\n        :type page: int\n        :param size: optional - default 10, max 20\n        :type size: int\n        :param recvWindow: optional\n        :type recvWindow: int\n\n        :returns: API response\n\n        .. code-block:: python\n\n           {\n                \"totalCount\":2,\n                \"masterAccountTotalAsset\": \"0.23231201\",\n                \"spotSubUserAssetBtcVoList\":[\n                    {\n                        \"email\":\"sub123@test.com\",\n                        \"totalAsset\":\"9999.00000000\"\n                    },\n                    {\n                        \"email\":\"test456@test.com\",\n                        \"totalAsset\":\"0.00000000\"\n                    }\n                ]\n            }\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_289query_subaccount_spot_summary = {"query_subaccount_spot_summary", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_289query_subaccount_spot_summary, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_288query_subaccount_spot_summary};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_289query_subaccount_spot_summary(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("query_subaccount_spot_summary (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 5338, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 5338, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "query_subaccount_spot_summary", 1) < 0) __PYX_ERR(0, 5338, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("query_subaccount_spot_summary", 1, 1, 1, i); __PYX_ERR(0, 5338, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 5338, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("query_subaccount_spot_summary", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 5338, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.query_subaccount_spot_summary", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_288query_subaccount_spot_summary(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_288query_subaccount_spot_summary(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("query_subaccount_spot_summary", 0);

  /* "unicorn_binance_rest_api/manager.py":5374
 * 
 *         """
 *         return self._request_margin_api('get', 'sub-account/spotSummary', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_subaccount_deposit_address(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5374, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 5374, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 5374, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[74], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5374, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":5338
 *         return self._request_margin_api('get', 'sub-account/assets', True, data=params, version='v3')
 * 
 *     def query_subaccount_spot_summary(self, **params):             # <<<<<<<<<<<<<<
 *         """Query Sub-account Spot Assets Summary (For Master Account)
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.query_subaccount_spot_summary", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":5376
 *         return self._request_margin_api('get', 'sub-account/spotSummary', True, data=params)
 * 
 *     def get_subaccount_deposit_address(self, **params):             # <<<<<<<<<<<<<<
 *         """Get Sub-account Deposit Address (For Master Account)
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_291get_subaccount_deposit_address(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_290get_subaccount_deposit_address, "Get Sub-account Deposit Address (For Master Account)\n\n        https://binance-docs.github.io/apidocs/spot/en/#get-sub-account-deposit-address-for-master-account\n\n        :param email: required - Sub account email\n        :type email: str\n        :param coin: required\n        :type coin: str\n        :param network: optional\n        :type network: str\n        :param recvWindow: optional\n        :type recvWindow: int\n\n        :returns: API response\n\n        .. code-block:: python\n\n           {\n                \"address\":\"TDunhSa7jkTNuKrusUTU1MUHtqXoBPKETV\",\n                \"coin\":\"USDT\",\n                \"tag\":\"\",\n                \"url\":\"https://tronscan.org/#/address/TDunhSa7jkTNuKrusUTU1MUHtqXoBPKETV\"\n            }\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_291get_subaccount_deposit_address = {"get_subaccount_deposit_address", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_291get_subaccount_deposit_address, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_290get_subaccount_deposit_address};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_291get_subaccount_deposit_address(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_subaccount_deposit_address (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 5376, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 5376, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "get_subaccount_deposit_address", 1) < 0) __PYX_ERR(0, 5376, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_subaccount_deposit_address", 1, 1, 1, i); __PYX_ERR(0, 5376, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 5376, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_subaccount_deposit_address", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 5376, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_subaccount_deposit_address", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_290get_subaccount_deposit_address(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_290get_subaccount_deposit_address(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_subaccount_deposit_address", 0);

  /* "unicorn_binance_rest_api/manager.py":5404
 * 
 *         """
 *         return self._request_margin_api('get', 'capital/deposit/subAddress', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_subaccount_deposit_history(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5404, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 5404, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 5404, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[75], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5404, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":5376
 *         return self._request_margin_api('get', 'sub-account/spotSummary', True, data=params)
 * 
 *     def get_subaccount_deposit_address(self, **params):             # <<<<<<<<<<<<<<
 *         """Get Sub-account Deposit Address (For Master Account)
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_subaccount_deposit_address", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":5406
 *         return self._request_margin_api('get', 'capital/deposit/subAddress', True, data=params)
 * 
 *     def get_subaccount_deposit_history(self, **params):             # <<<<<<<<<<<<<<
 *         """Get Sub-account Deposit History (For Master Account)
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_293get_subaccount_deposit_history(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_292get_subaccount_deposit_history, "Get Sub-account Deposit History (For Master Account)\n\n        https://binance-docs.github.io/apidocs/spot/en/#get-sub-account-deposit-address-for-master-account\n\n        :param email: required - Sub account email\n        :type email: str\n        :param coin: optional\n        :type coin: str\n        :param status: optional - (0:pending,6: credited but cannot withdraw, 1:success)\n        :type status: int\n        :param startTime: optional\n        :type startTime: int\n        :param endTime: optional\n        :type endTime: int\n        :param limit: optional\n        :type limit: int\n        :param offset: optional - default:0\n        :type offset: int\n        :param recvWindow: optional\n        :type recvWindow: int\n\n        :returns: API response\n\n        .. code-block:: python\n\n           [\n                {\n                    \"amount\":\"0.00999800\",\n                    \"coin\":\"PAXG\",\n                    \"network\":\"ETH\",\n                    \"status\":1,\n                    \"address\":\"0x788cabe9236ce061e5a892e1a59395a81fc8d62c\",\n                    \"addressTag\":\"\",\n                    \"txId\":\"0xaad4654a3234aa6118af9b4b335f5ae81c360b2394721c019b5d1e75328b09f3\",\n                    \"insertTime\":1599621997000,\n                    \"transferType\":0,\n                    \"confirmTimes\":\"12/12\"\n                },\n                {\n                    \"amount\":\"0.50000000\",\n                    \"coin\":\"IOTA\",\n                    \"network\":\"IOTA\",\n                    \"status\":1,\n                    \"address\":\"SIZ9VLMHWATXKV99LH99CIGFJFUMLEHGWVZVNNZXRJJVWBPHYWPPBOSDORZ9EQSHCZAMPVAPGFYQAUUV9DROOXJLNW\",\n                    \"addressTag\":\"\",\n                    \"txId\":\"ESBFVQUTPIWQNJSPXFNHNYHSQNTGKRVKPRABQWTAXCDWOAKDKYWPTVG9BGXNVNKTLEJGESAVXIKIZ9999\",\n                    \"insertTime\":1599620082000,\n                    \"transferType\":0,\n                    \"confirmTimes\":""\"1/1\"\n                }\n           ]\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_293get_subaccount_deposit_history = {"get_subaccount_deposit_history", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_293get_subaccount_deposit_history, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_292get_subaccount_deposit_history};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_293get_subaccount_deposit_history(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_subaccount_deposit_history (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 5406, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 5406, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "get_subaccount_deposit_history", 1) < 0) __PYX_ERR(0, 5406, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_subaccount_deposit_history", 1, 1, 1, i); __PYX_ERR(0, 5406, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 5406, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_subaccount_deposit_history", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 5406, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_subaccount_deposit_history", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_292get_subaccount_deposit_history(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_292get_subaccount_deposit_history(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_subaccount_deposit_history", 0);

  /* "unicorn_binance_rest_api/manager.py":5462
 * 
 *         """
 *         return self._request_margin_api('get', 'capital/deposit/subHisrec', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_subaccount_futures_margin_status(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5462, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 5462, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 5462, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[76], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5462, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":5406
 *         return self._request_margin_api('get', 'capital/deposit/subAddress', True, data=params)
 * 
 *     def get_subaccount_deposit_history(self, **params):             # <<<<<<<<<<<<<<
 *         """Get Sub-account Deposit History (For Master Account)
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_subaccount_deposit_history", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":5464
 *         return self._request_margin_api('get', 'capital/deposit/subHisrec', True, data=params)
 * 
 *     def get_subaccount_futures_margin_status(self, **params):             # <<<<<<<<<<<<<<
 *         """Get Sub-account's Status on Margin/Futures (For Master Account)
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_295get_subaccount_futures_margin_status(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_294get_subaccount_futures_margin_status, "Get Sub-account's Status on Margin/Futures (For Master Account)\n\n        https://binance-docs.github.io/apidocs/spot/en/#get-sub-account-39-s-status-on-margin-futures-for-master-account\n\n        :param email: optional - Sub account email\n        :type email: str\n        :param recvWindow: optional\n        :type recvWindow: int\n\n        :returns: API response\n\n        .. code-block:: python\n\n           [\n                {\n                    \"email\":\"123@test.com\",      // user email\n                    \"isSubUserEnabled\": true,    // true or false\n                    \"isUserActive\": true,        // true or false\n                    \"insertTime\": 1570791523523  // subaccount create time\n                    \"isMarginEnabled\": true,     // true or false for margin\n                    \"isFutureEnabled\": true      // true or false for futures.\n                    \"mobile\": 1570791523523      // user mobile number\n                }\n            ]\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_295get_subaccount_futures_margin_status = {"get_subaccount_futures_margin_status", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_295get_subaccount_futures_margin_status, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_294get_subaccount_futures_margin_status};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_295get_subaccount_futures_margin_status(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_subaccount_futures_margin_status (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 5464, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 5464, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "get_subaccount_futures_margin_status", 1) < 0) __PYX_ERR(0, 5464, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_subaccount_futures_margin_status", 1, 1, 1, i); __PYX_ERR(0, 5464, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 5464, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_subaccount_futures_margin_status", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 5464, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_subaccount_futures_margin_status", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_294get_subaccount_futures_margin_status(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_294get_subaccount_futures_margin_status(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_subaccount_futures_margin_status", 0);

  /* "unicorn_binance_rest_api/manager.py":5493
 * 
 *         """
 *         return self._request_margin_api('get', 'sub-account/status', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def enable_subaccount_margin(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5493, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 5493, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 5493, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[77], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5493, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":5464
 *         return self._request_margin_api('get', 'capital/deposit/subHisrec', True, data=params)
 * 
 *     def get_subaccount_futures_margin_status(self, **params):             # <<<<<<<<<<<<<<
 *         """Get Sub-account's Status on Margin/Futures (For Master Account)
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_subaccount_futures_margin_status", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":5495
 *         return self._request_margin_api('get', 'sub-account/status', True, data=params)
 * 
 *     def enable_subaccount_margin(self, **params):             # <<<<<<<<<<<<<<
 *         """Enable Margin for Sub-account (For Master Account)
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_297enable_subaccount_margin(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_296enable_subaccount_margin, "Enable Margin for Sub-account (For Master Account)\n\n        https://binance-docs.github.io/apidocs/spot/en/#enable-margin-for-sub-account-for-master-account\n\n        :param email: required - Sub account email\n        :type email: str\n        :param recvWindow: optional\n        :type recvWindow: int\n\n        :returns: API response\n\n        .. code-block:: python\n\n           {\n\n                \"email\":\"123@test.com\",\n\n                \"isMarginEnabled\": true\n\n            }\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_297enable_subaccount_margin = {"enable_subaccount_margin", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_297enable_subaccount_margin, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_296enable_subaccount_margin};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_297enable_subaccount_margin(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("enable_subaccount_margin (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 5495, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 5495, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "enable_subaccount_margin", 1) < 0) __PYX_ERR(0, 5495, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("enable_subaccount_margin", 1, 1, 1, i); __PYX_ERR(0, 5495, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 5495, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("enable_subaccount_margin", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 5495, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.enable_subaccount_margin", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_296enable_subaccount_margin(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_296enable_subaccount_margin(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("enable_subaccount_margin", 0);

  /* "unicorn_binance_rest_api/manager.py":5520
 * 
 *         """
 *         return self._request_margin_api('post', 'sub-account/margin/enable', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_subaccount_margin_details(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5520, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 5520, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 5520, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[78], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5520, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":5495
 *         return self._request_margin_api('get', 'sub-account/status', True, data=params)
 * 
 *     def enable_subaccount_margin(self, **params):             # <<<<<<<<<<<<<<
 *         """Enable Margin for Sub-account (For Master Account)
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.enable_subaccount_margin", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":5522
 *         return self._request_margin_api('post', 'sub-account/margin/enable', True, data=params)
 * 
 *     def get_subaccount_margin_details(self, **params):             # <<<<<<<<<<<<<<
 *         """Get Detail on Sub-account's Margin Account (For Master Account)
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_299get_subaccount_margin_details(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_298get_subaccount_margin_details, "Get Detail on Sub-account's Margin Account (For Master Account)\n\n        https://binance-docs.github.io/apidocs/spot/en/#get-detail-on-sub-account-39-s-margin-account-for-master-account\n\n        :param email: required - Sub account email\n        :type email: str\n        :param recvWindow: optional\n        :type recvWindow: int\n\n        :returns: API response\n\n        .. code-block:: python\n\n            {\n                  \"email\":\"123@test.com\",\n                  \"marginLevel\": \"11.64405625\",\n                  \"totalAssetOfBtc\": \"6.82728457\",\n                  \"totalLiabilityOfBtc\": \"0.58633215\",\n                  \"totalNetAssetOfBtc\": \"6.24095242\",\n                  \"marginTradeCoeffVo\":\n                        {\n                            \"forceLiquidationBar\": \"1.10000000\",  // Liquidation margin ratio\n                            \"marginCallBar\": \"1.50000000\",        // Margin call margin ratio\n                            \"normalBar\": \"2.00000000\"             // Initial margin ratio\n                        },\n                  \"marginUserAssetVoList\": [\n                      {\n                          \"asset\": \"BTC\",\n                          \"borrowed\": \"0.00000000\",\n                          \"free\": \"0.00499500\",\n                          \"interest\": \"0.00000000\",\n                          \"locked\": \"0.00000000\",\n                          \"netAsset\": \"0.00499500\"\n                      },\n                      {\n                          \"asset\": \"BNB\",\n                          \"borrowed\": \"201.66666672\",\n                          \"free\": \"2346.50000000\",\n                          \"interest\": \"0.00000000\",\n                          \"locked\": \"0.00000000\",\n                          \"netAsset\": \"2144.83333328\"\n                      },\n                      {\n                          \"asset\": \"ETH\",\n                          \"borr""owed\": \"0.00000000\",\n                          \"free\": \"0.00000000\",\n                          \"interest\": \"0.00000000\",\n                          \"locked\": \"0.00000000\",\n                          \"netAsset\": \"0.00000000\"\n                      },\n                      {\n                          \"asset\": \"USDT\",\n                          \"borrowed\": \"0.00000000\",\n                          \"free\": \"0.00000000\",\n                          \"interest\": \"0.00000000\",\n                          \"locked\": \"0.00000000\",\n                          \"netAsset\": \"0.00000000\"\n                      }\n                  ]\n            }\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_299get_subaccount_margin_details = {"get_subaccount_margin_details", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_299get_subaccount_margin_details, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_298get_subaccount_margin_details};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_299get_subaccount_margin_details(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_subaccount_margin_details (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 5522, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 5522, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "get_subaccount_margin_details", 1) < 0) __PYX_ERR(0, 5522, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_subaccount_margin_details", 1, 1, 1, i); __PYX_ERR(0, 5522, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 5522, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_subaccount_margin_details", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 5522, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_subaccount_margin_details", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_298get_subaccount_margin_details(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_298get_subaccount_margin_details(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_subaccount_margin_details", 0);

  /* "unicorn_binance_rest_api/manager.py":5587
 * 
 *         """
 *         return self._request_margin_api('get', 'sub-account/margin/account', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_subaccount_margin_summary(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5587, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 5587, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 5587, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[79], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5587, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":5522
 *         return self._request_margin_api('post', 'sub-account/margin/enable', True, data=params)
 * 
 *     def get_subaccount_margin_details(self, **params):             # <<<<<<<<<<<<<<
 *         """Get Detail on Sub-account's Margin Account (For Master Account)
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_subaccount_margin_details", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":5589
 *         return self._request_margin_api('get', 'sub-account/margin/account', True, data=params)
 * 
 *     def get_subaccount_margin_summary(self, **params):             # <<<<<<<<<<<<<<
 *         """Get Summary of Sub-account's Margin Account (For Master Account)
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_301get_subaccount_margin_summary(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_300get_subaccount_margin_summary, "Get Summary of Sub-account's Margin Account (For Master Account)\n\n        https://binance-docs.github.io/apidocs/spot/en/#get-summary-of-sub-account-39-s-margin-account-for-master-account\n\n        :param recvWindow: optional\n        :type recvWindow: int\n\n        :returns: API response\n\n        .. code-block:: python\n\n            {\n                \"totalAssetOfBtc\": \"4.33333333\",\n                \"totalLiabilityOfBtc\": \"2.11111112\",\n                \"totalNetAssetOfBtc\": \"2.22222221\",\n                \"subAccountList\":[\n                    {\n                        \"email\":\"123@test.com\",\n                        \"totalAssetOfBtc\": \"2.11111111\",\n                        \"totalLiabilityOfBtc\": \"1.11111111\",\n                        \"totalNetAssetOfBtc\": \"1.00000000\"\n                    },\n                    {\n                        \"email\":\"345@test.com\",\n                        \"totalAssetOfBtc\": \"2.22222222\",\n                        \"totalLiabilityOfBtc\": \"1.00000001\",\n                        \"totalNetAssetOfBtc\": \"1.22222221\"\n                    }\n                ]\n            }\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_301get_subaccount_margin_summary = {"get_subaccount_margin_summary", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_301get_subaccount_margin_summary, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_300get_subaccount_margin_summary};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_301get_subaccount_margin_summary(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_subaccount_margin_summary (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 5589, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 5589, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "get_subaccount_margin_summary", 1) < 0) __PYX_ERR(0, 5589, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_subaccount_margin_summary", 1, 1, 1, i); __PYX_ERR(0, 5589, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 5589, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_subaccount_margin_summary", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 5589, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_subaccount_margin_summary", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_300get_subaccount_margin_summary(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_300get_subaccount_margin_summary(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_subaccount_margin_summary", 0);

  /* "unicorn_binance_rest_api/manager.py":5624
 * 
 *         """
 *         return self._request_margin_api('get', 'sub-account/margin/accountSummary', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def enable_subaccount_futures(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5624, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 5624, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 5624, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[80], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5624, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":5589
 *         return self._request_margin_api('get', 'sub-account/margin/account', True, data=params)
 * 
 *     def get_subaccount_margin_summary(self, **params):             # <<<<<<<<<<<<<<
 *         """Get Summary of Sub-account's Margin Account (For Master Account)
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_subaccount_margin_summary", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":5626
 *         return self._request_margin_api('get', 'sub-account/margin/accountSummary', True, data=params)
 * 
 *     def enable_subaccount_futures(self, **params):             # <<<<<<<<<<<<<<
 *         """Enable Futures for Sub-account (For Master Account)
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_303enable_subaccount_futures(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_302enable_subaccount_futures, "Enable Futures for Sub-account (For Master Account)\n\n        https://binance-docs.github.io/apidocs/spot/en/#enable-futures-for-sub-account-for-master-account\n\n        :param email: required - Sub account email\n        :type email: str\n        :param recvWindow: optional\n        :type recvWindow: int\n\n        :returns: API response\n\n        .. code-block:: python\n\n            {\n\n                \"email\":\"123@test.com\",\n\n                \"isFuturesEnabled\": true  // true or false\n\n            }\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_303enable_subaccount_futures = {"enable_subaccount_futures", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_303enable_subaccount_futures, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_302enable_subaccount_futures};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_303enable_subaccount_futures(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("enable_subaccount_futures (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 5626, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 5626, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "enable_subaccount_futures", 1) < 0) __PYX_ERR(0, 5626, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("enable_subaccount_futures", 1, 1, 1, i); __PYX_ERR(0, 5626, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 5626, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("enable_subaccount_futures", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 5626, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.enable_subaccount_futures", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_302enable_subaccount_futures(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_302enable_subaccount_futures(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("enable_subaccount_futures", 0);

  /* "unicorn_binance_rest_api/manager.py":5651
 * 
 *         """
 *         return self._request_margin_api('post', 'sub-account/futures/enable', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_subaccount_futures_details(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5651, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 5651, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 5651, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[81], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5651, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":5626
 *         return self._request_margin_api('get', 'sub-account/margin/accountSummary', True, data=params)
 * 
 *     def enable_subaccount_futures(self, **params):             # <<<<<<<<<<<<<<
 *         """Enable Futures for Sub-account (For Master Account)
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.enable_subaccount_futures", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":5653
 *         return self._request_margin_api('post', 'sub-account/futures/enable', True, data=params)
 * 
 *     def get_subaccount_futures_details(self, **params):             # <<<<<<<<<<<<<<
 *         """Get Detail on Sub-account's Futures Account (For Master Account)
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_305get_subaccount_futures_details(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_304get_subaccount_futures_details, "Get Detail on Sub-account's Futures Account (For Master Account)\n\n        https://binance-docs.github.io/apidocs/spot/en/#get-detail-on-sub-account-39-s-futures-account-for-master-account\n\n        :param email: required - Sub account email\n        :type email: str\n        :param recvWindow: optional\n        :type recvWindow: int\n\n        :returns: API response\n\n        .. code-block:: python\n\n            {\n                \"email\": \"abc@test.com\",\n                \"asset\": \"USDT\",\n                \"assets\":[\n                    {\n                        \"asset\": \"USDT\",\n                        \"initialMargin\": \"0.00000000\",\n                        \"maintenanceMargin\": \"0.00000000\",\n                        \"marginBalance\": \"0.88308000\",\n                        \"maxWithdrawAmount\": \"0.88308000\",\n                        \"openOrderInitialMargin\": \"0.00000000\",\n                        \"positionInitialMargin\": \"0.00000000\",\n                        \"unrealizedProfit\": \"0.00000000\",\n                        \"walletBalance\": \"0.88308000\"\n                     }\n                ],\n                \"canDeposit\": true,\n                \"canTrade\": true,\n                \"canWithdraw\": true,\n                \"feeTier\": 2,\n                \"maxWithdrawAmount\": \"0.88308000\",\n                \"totalInitialMargin\": \"0.00000000\",\n                \"totalMaintenanceMargin\": \"0.00000000\",\n                \"totalMarginBalance\": \"0.88308000\",\n                \"totalOpenOrderInitialMargin\": \"0.00000000\",\n                \"totalPositionInitialMargin\": \"0.00000000\",\n                \"totalUnrealizedProfit\": \"0.00000000\",\n                \"totalWalletBalance\": \"0.88308000\",\n                \"updateTime\": 1576756674610\n            }\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_305get_subaccount_futures_details = {"get_subaccount_futures_details", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_305get_subaccount_futures_details, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_304get_subaccount_futures_details};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_305get_subaccount_futures_details(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_subaccount_futures_details (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 5653, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 5653, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "get_subaccount_futures_details", 1) < 0) __PYX_ERR(0, 5653, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_subaccount_futures_details", 1, 1, 1, i); __PYX_ERR(0, 5653, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 5653, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_subaccount_futures_details", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 5653, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_subaccount_futures_details", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_304get_subaccount_futures_details(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_304get_subaccount_futures_details(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_subaccount_futures_details", 0);

  /* "unicorn_binance_rest_api/manager.py":5701
 * 
 *         """
 *         return self._request_margin_api('get', 'sub-account/futures/account', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_subaccount_futures_summary(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5701, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 5701, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 5701, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[82], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5701, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":5653
 *         return self._request_margin_api('post', 'sub-account/futures/enable', True, data=params)
 * 
 *     def get_subaccount_futures_details(self, **params):             # <<<<<<<<<<<<<<
 *         """Get Detail on Sub-account's Futures Account (For Master Account)
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_subaccount_futures_details", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":5703
 *         return self._request_margin_api('get', 'sub-account/futures/account', True, data=params)
 * 
 *     def get_subaccount_futures_summary(self, **params):             # <<<<<<<<<<<<<<
 *         """Get Summary of Sub-account's Futures Account (For Master Account)
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_307get_subaccount_futures_summary(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_306get_subaccount_futures_summary, "Get Summary of Sub-account's Futures Account (For Master Account)\n\n        https://binance-docs.github.io/apidocs/spot/en/#get-summary-of-sub-account-39-s-futures-account-for-master-account\n\n        :param recvWindow: optional\n        :type recvWindow: int\n\n        :returns: API response\n\n        .. code-block:: python\n\n            {\n                \"totalInitialMargin\": \"9.83137400\",\n                \"totalMaintenanceMargin\": \"0.41568700\",\n                \"totalMarginBalance\": \"23.03235621\",\n                \"totalOpenOrderInitialMargin\": \"9.00000000\",\n                \"totalPositionInitialMargin\": \"0.83137400\",\n                \"totalUnrealizedProfit\": \"0.03219710\",\n                \"totalWalletBalance\": \"22.15879444\",\n                \"asset\": \"USDT\",\n                \"subAccountList\":[\n                    {\n                        \"email\": \"123@test.com\",\n                        \"totalInitialMargin\": \"9.00000000\",\n                        \"totalMaintenanceMargin\": \"0.00000000\",\n                        \"totalMarginBalance\": \"22.12659734\",\n                        \"totalOpenOrderInitialMargin\": \"9.00000000\",\n                        \"totalPositionInitialMargin\": \"0.00000000\",\n                        \"totalUnrealizedProfit\": \"0.00000000\",\n                        \"totalWalletBalance\": \"22.12659734\",\n                        \"asset\": \"USDT\"\n                    },\n                    {\n                        \"email\": \"345@test.com\",\n                        \"totalInitialMargin\": \"0.83137400\",\n                        \"totalMaintenanceMargin\": \"0.41568700\",\n                        \"totalMarginBalance\": \"0.90575887\",\n                        \"totalOpenOrderInitialMargin\": \"0.00000000\",\n                        \"totalPositionInitialMargin\": \"0.83137400\",\n                        \"totalUnrealizedProfit\": \"0.03219710\",\n                        \"totalWa""lletBalance\": \"0.87356177\",\n                        \"asset\": \"USDT\"\n                    }\n                ]\n            }\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_307get_subaccount_futures_summary = {"get_subaccount_futures_summary", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_307get_subaccount_futures_summary, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_306get_subaccount_futures_summary};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_307get_subaccount_futures_summary(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_subaccount_futures_summary (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 5703, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 5703, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "get_subaccount_futures_summary", 1) < 0) __PYX_ERR(0, 5703, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_subaccount_futures_summary", 1, 1, 1, i); __PYX_ERR(0, 5703, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 5703, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_subaccount_futures_summary", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 5703, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_subaccount_futures_summary", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_306get_subaccount_futures_summary(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_306get_subaccount_futures_summary(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_subaccount_futures_summary", 0);

  /* "unicorn_binance_rest_api/manager.py":5753
 * 
 *         """
 *         return self._request_margin_api('get', 'sub-account/futures/accountSummary', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_subaccount_futures_positionrisk(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5753, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 5753, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 5753, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[83], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5753, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":5703
 *         return self._request_margin_api('get', 'sub-account/futures/account', True, data=params)
 * 
 *     def get_subaccount_futures_summary(self, **params):             # <<<<<<<<<<<<<<
 *         """Get Summary of Sub-account's Futures Account (For Master Account)
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_subaccount_futures_summary", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":5755
 *         return self._request_margin_api('get', 'sub-account/futures/accountSummary', True, data=params)
 * 
 *     def get_subaccount_futures_positionrisk(self, **params):             # <<<<<<<<<<<<<<
 *         """Get Futures Position-Risk of Sub-account (For Master Account)
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_309get_subaccount_futures_positionrisk(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_308get_subaccount_futures_positionrisk, "Get Futures Position-Risk of Sub-account (For Master Account)\n\n        https://binance-docs.github.io/apidocs/spot/en/#get-futures-position-risk-of-sub-account-for-master-account\n\n        :param email: required - Sub account email\n        :type email: str\n        :param recvWindow: optional\n        :type recvWindow: int\n\n        :returns: API response\n\n        .. code-block:: python\n\n            [\n                {\n                    \"entryPrice\": \"9975.12000\",\n                    \"leverage\": \"50\",              // current initial leverage\n                    \"maxNotional\": \"1000000\",      // notional value limit of current initial leverage\n                    \"liquidationPrice\": \"7963.54\",\n                    \"markPrice\": \"9973.50770517\",\n                    \"positionAmount\": \"0.010\",\n                    \"symbol\": \"BTCUSDT\",\n                    \"unrealizedProfit\": \"-0.01612295\"\n                }\n            ]\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_309get_subaccount_futures_positionrisk = {"get_subaccount_futures_positionrisk", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_309get_subaccount_futures_positionrisk, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_308get_subaccount_futures_positionrisk};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_309get_subaccount_futures_positionrisk(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_subaccount_futures_positionrisk (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 5755, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 5755, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "get_subaccount_futures_positionrisk", 1) < 0) __PYX_ERR(0, 5755, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_subaccount_futures_positionrisk", 1, 1, 1, i); __PYX_ERR(0, 5755, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 5755, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_subaccount_futures_positionrisk", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 5755, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_subaccount_futures_positionrisk", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_308get_subaccount_futures_positionrisk(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_308get_subaccount_futures_positionrisk(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_subaccount_futures_positionrisk", 0);

  /* "unicorn_binance_rest_api/manager.py":5785
 * 
 *         """
 *         return self._request_margin_api('get', 'sub-account/futures/positionRisk', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def make_subaccount_futures_transfer(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5785, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 5785, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 5785, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[84], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5785, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":5755
 *         return self._request_margin_api('get', 'sub-account/futures/accountSummary', True, data=params)
 * 
 *     def get_subaccount_futures_positionrisk(self, **params):             # <<<<<<<<<<<<<<
 *         """Get Futures Position-Risk of Sub-account (For Master Account)
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_subaccount_futures_positionrisk", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":5787
 *         return self._request_margin_api('get', 'sub-account/futures/positionRisk', True, data=params)
 * 
 *     def make_subaccount_futures_transfer(self, **params):             # <<<<<<<<<<<<<<
 *         """Futures Transfer for Sub-account (For Master Account)
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_311make_subaccount_futures_transfer(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_310make_subaccount_futures_transfer, "Futures Transfer for Sub-account (For Master Account)\n\n        https://binance-docs.github.io/apidocs/spot/en/#futures-transfer-for-sub-account-for-master-account\n\n        :param email: required - Sub account email\n        :type email: str\n        :param asset: required - The asset being transferred, e.g., USDT\n        :type asset: str\n        :param amount: required - The amount to be transferred\n        :type amount: float\n        :param type: required - 1: transfer from subaccount's spot account to its USDT-margined futures account\n                                2: transfer from subaccount's USDT-margined futures account to its spot account\n                                3: transfer from subaccount's spot account to its COIN-margined futures account\n                                4: transfer from subaccount's COIN-margined futures account to its spot account\n        :type type: int\n\n        :returns: API response\n\n        .. code-block:: python\n\n            {\n                \"txnId\":\"2966662589\"\n            }\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_311make_subaccount_futures_transfer = {"make_subaccount_futures_transfer", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_311make_subaccount_futures_transfer, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_310make_subaccount_futures_transfer};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_311make_subaccount_futures_transfer(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("make_subaccount_futures_transfer (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 5787, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 5787, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "make_subaccount_futures_transfer", 1) < 0) __PYX_ERR(0, 5787, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("make_subaccount_futures_transfer", 1, 1, 1, i); __PYX_ERR(0, 5787, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 5787, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("make_subaccount_futures_transfer", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 5787, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.make_subaccount_futures_transfer", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_310make_subaccount_futures_transfer(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_310make_subaccount_futures_transfer(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("make_subaccount_futures_transfer", 0);

  /* "unicorn_binance_rest_api/manager.py":5815
 * 
 *         """
 *         return self._request_margin_api('post', 'sub-account/futures/transfer', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def make_subaccount_margin_transfer(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5815, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 5815, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 5815, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[85], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5815, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":5787
 *         return self._request_margin_api('get', 'sub-account/futures/positionRisk', True, data=params)
 * 
 *     def make_subaccount_futures_transfer(self, **params):             # <<<<<<<<<<<<<<
 *         """Futures Transfer for Sub-account (For Master Account)
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.make_subaccount_futures_transfer", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":5817
 *         return self._request_margin_api('post', 'sub-account/futures/transfer', True, data=params)
 * 
 *     def make_subaccount_margin_transfer(self, **params):             # <<<<<<<<<<<<<<
 *         """Margin Transfer for Sub-account (For Master Account)
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_313make_subaccount_margin_transfer(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_312make_subaccount_margin_transfer, "Margin Transfer for Sub-account (For Master Account)\n\n        https://binance-docs.github.io/apidocs/spot/en/#margin-transfer-for-sub-account-for-master-account\n\n        :param email: required - Sub account email\n        :type email: str\n        :param asset: required - The asset being transferred, e.g., USDT\n        :type asset: str\n        :param amount: required - The amount to be transferred\n        :type amount: float\n        :param type: required - 1: transfer from subaccount's spot account to margin account\n                                2: transfer from subaccount's margin account to its spot account\n        :type type: int\n\n        :returns: API response\n\n        .. code-block:: python\n\n            {\n                \"txnId\":\"2966662589\"\n            }\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_313make_subaccount_margin_transfer = {"make_subaccount_margin_transfer", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_313make_subaccount_margin_transfer, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_312make_subaccount_margin_transfer};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_313make_subaccount_margin_transfer(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("make_subaccount_margin_transfer (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 5817, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 5817, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "make_subaccount_margin_transfer", 1) < 0) __PYX_ERR(0, 5817, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("make_subaccount_margin_transfer", 1, 1, 1, i); __PYX_ERR(0, 5817, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 5817, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("make_subaccount_margin_transfer", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 5817, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.make_subaccount_margin_transfer", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_312make_subaccount_margin_transfer(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_312make_subaccount_margin_transfer(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("make_subaccount_margin_transfer", 0);

  /* "unicorn_binance_rest_api/manager.py":5843
 * 
 *         """
 *         return self._request_margin_api('post', 'sub-account/margin/transfer', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def make_subaccount_to_subaccount_transfer(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5843, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 5843, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 5843, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[86], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5843, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":5817
 *         return self._request_margin_api('post', 'sub-account/futures/transfer', True, data=params)
 * 
 *     def make_subaccount_margin_transfer(self, **params):             # <<<<<<<<<<<<<<
 *         """Margin Transfer for Sub-account (For Master Account)
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.make_subaccount_margin_transfer", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":5845
 *         return self._request_margin_api('post', 'sub-account/margin/transfer', True, data=params)
 * 
 *     def make_subaccount_to_subaccount_transfer(self, **params):             # <<<<<<<<<<<<<<
 *         """Transfer to Sub-account of Same Master (For Sub-account)
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_315make_subaccount_to_subaccount_transfer(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_314make_subaccount_to_subaccount_transfer, "Transfer to Sub-account of Same Master (For Sub-account)\n\n        https://binance-docs.github.io/apidocs/spot/en/#transfer-to-sub-account-of-same-master-for-sub-account\n\n        :param toEmail: required - Sub account email\n        :type toEmail: str\n        :param asset: required - The asset being transferred, e.g., USDT\n        :type asset: str\n        :param amount: required - The amount to be transferred\n        :type amount: float\n        :param recvWindow: optional\n        :type recvWindow: int\n\n        :returns: API response\n\n        .. code-block:: python\n\n            {\n                \"txnId\":\"2966662589\"\n            }\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_315make_subaccount_to_subaccount_transfer = {"make_subaccount_to_subaccount_transfer", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_315make_subaccount_to_subaccount_transfer, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_314make_subaccount_to_subaccount_transfer};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_315make_subaccount_to_subaccount_transfer(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("make_subaccount_to_subaccount_transfer (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 5845, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 5845, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "make_subaccount_to_subaccount_transfer", 1) < 0) __PYX_ERR(0, 5845, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("make_subaccount_to_subaccount_transfer", 1, 1, 1, i); __PYX_ERR(0, 5845, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 5845, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("make_subaccount_to_subaccount_transfer", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 5845, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.make_subaccount_to_subaccount_transfer", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_314make_subaccount_to_subaccount_transfer(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_314make_subaccount_to_subaccount_transfer(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("make_subaccount_to_subaccount_transfer", 0);

  /* "unicorn_binance_rest_api/manager.py":5870
 * 
 *         """
 *         return self._request_margin_api('post', 'sub-account/transfer/subToSub', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def make_subaccount_to_master_transfer(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5870, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 5870, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 5870, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[87], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5870, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":5845
 *         return self._request_margin_api('post', 'sub-account/margin/transfer', True, data=params)
 * 
 *     def make_subaccount_to_subaccount_transfer(self, **params):             # <<<<<<<<<<<<<<
 *         """Transfer to Sub-account of Same Master (For Sub-account)
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.make_subaccount_to_subaccount_transfer", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":5872
 *         return self._request_margin_api('post', 'sub-account/transfer/subToSub', True, data=params)
 * 
 *     def make_subaccount_to_master_transfer(self, **params):             # <<<<<<<<<<<<<<
 *         """Transfer to Master (For Sub-account)
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_317make_subaccount_to_master_transfer(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_316make_subaccount_to_master_transfer, "Transfer to Master (For Sub-account)\n\n        https://binance-docs.github.io/apidocs/spot/en/#transfer-to-master-for-sub-account\n\n        :param asset: required - The asset being transferred, e.g., USDT\n        :type asset: str\n        :param amount: required - The amount to be transferred\n        :type amount: float\n        :param recvWindow: optional\n        :type recvWindow: int\n\n        :returns: API response\n\n        .. code-block:: python\n\n            {\n                \"txnId\":\"2966662589\"\n            }\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_317make_subaccount_to_master_transfer = {"make_subaccount_to_master_transfer", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_317make_subaccount_to_master_transfer, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_316make_subaccount_to_master_transfer};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_317make_subaccount_to_master_transfer(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("make_subaccount_to_master_transfer (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 5872, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 5872, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "make_subaccount_to_master_transfer", 1) < 0) __PYX_ERR(0, 5872, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("make_subaccount_to_master_transfer", 1, 1, 1, i); __PYX_ERR(0, 5872, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 5872, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("make_subaccount_to_master_transfer", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 5872, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.make_subaccount_to_master_transfer", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_316make_subaccount_to_master_transfer(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_316make_subaccount_to_master_transfer(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("make_subaccount_to_master_transfer", 0);

  /* "unicorn_binance_rest_api/manager.py":5895
 * 
 *         """
 *         return self._request_margin_api('post', 'sub-account/transfer/subToMaster', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_subaccount_transfer_history(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5895, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 5895, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 5895, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[88], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5895, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":5872
 *         return self._request_margin_api('post', 'sub-account/transfer/subToSub', True, data=params)
 * 
 *     def make_subaccount_to_master_transfer(self, **params):             # <<<<<<<<<<<<<<
 *         """Transfer to Master (For Sub-account)
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.make_subaccount_to_master_transfer", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":5897
 *         return self._request_margin_api('post', 'sub-account/transfer/subToMaster', True, data=params)
 * 
 *     def get_subaccount_transfer_history(self, **params):             # <<<<<<<<<<<<<<
 *         """Subaccount Transfer History (For Sub-account)
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_319get_subaccount_transfer_history(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_318get_subaccount_transfer_history, "Subaccount Transfer History (For Sub-account)\n\n        https://binance-docs.github.io/apidocs/spot/en/#transfer-to-master-for-sub-account\n\n        :param asset: required - The asset being transferred, e.g., USDT\n        :type asset: str\n        :param type: optional - 1: transfer in, 2: transfer out\n        :type type: int\n        :param startTime: optional\n        :type startTime: int\n        :param endTime: optional\n        :type endTime: int\n        :param limit: optional - Default 500\n        :type limit: int\n        :param recvWindow: optional\n        :type recvWindow: int\n\n        :returns: API response\n\n        .. code-block:: python\n\n            [\n              {\n                \"counterParty\":\"master\",\n                \"email\":\"master@test.com\",\n                \"type\":1,  // 1 for transfer in, 2 for transfer out\n                \"asset\":\"BTC\",\n                \"qty\":\"1\",\n                \"status\":\"SUCCESS\",\n                \"tranId\":11798835829,\n                \"time\":1544433325000\n              },\n              {\n                \"counterParty\":\"subAccount\",\n                \"email\":\"sub2@test.com\",\n                \"type\":2,\n                \"asset\":\"ETH\",\n                \"qty\":\"2\",\n                \"status\":\"SUCCESS\",\n                \"tranId\":11798829519,\n                \"time\":1544433326000\n              }\n            ]\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_319get_subaccount_transfer_history = {"get_subaccount_transfer_history", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_319get_subaccount_transfer_history, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_318get_subaccount_transfer_history};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_319get_subaccount_transfer_history(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_subaccount_transfer_history (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 5897, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 5897, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "get_subaccount_transfer_history", 1) < 0) __PYX_ERR(0, 5897, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_subaccount_transfer_history", 1, 1, 1, i); __PYX_ERR(0, 5897, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 5897, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_subaccount_transfer_history", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 5897, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_subaccount_transfer_history", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_318get_subaccount_transfer_history(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_318get_subaccount_transfer_history(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_subaccount_transfer_history", 0);

  /* "unicorn_binance_rest_api/manager.py":5945
 * 
 *         """
 *         return self._request_margin_api('get', 'sub-account/transfer/subUserHistory', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def make_universal_transfer(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5945, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 5945, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 5945, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[89], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5945, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":5897
 *         return self._request_margin_api('post', 'sub-account/transfer/subToMaster', True, data=params)
 * 
 *     def get_subaccount_transfer_history(self, **params):             # <<<<<<<<<<<<<<
 *         """Subaccount Transfer History (For Sub-account)
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_subaccount_transfer_history", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":5947
 *         return self._request_margin_api('get', 'sub-account/transfer/subUserHistory', True, data=params)
 * 
 *     def make_universal_transfer(self, **params):             # <<<<<<<<<<<<<<
 *         """Universal Transfer (For Master Account)
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_321make_universal_transfer(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_320make_universal_transfer, "Universal Transfer (For Master Account)\n\n        https://binance-docs.github.io/apidocs/spot/en/#universal-transfer-for-master-account\n\n        :param fromEmail: optional\n        :type fromEmail: str\n        :param toEmail: optional\n        :type toEmail: str\n        :param fromAccountType: required - \"SPOT\",\"USDT_FUTURE\",\"COIN_FUTURE\"\n        :type fromAccountType: str\n        :param toAccountType: required - \"SPOT\",\"USDT_FUTURE\",\"COIN_FUTURE\"\n        :type toAccountType: str\n        :param asset: required - The asset being transferred, e.g., USDT\n        :type asset: str\n        :param amount: required\n        :type amount: float\n        :param recvWindow: optional\n        :type recvWindow: int\n\n        :returns: API response\n\n        .. code-block:: python\n\n            {\n                \"tranId\":11945860693\n            }\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_321make_universal_transfer = {"make_universal_transfer", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_321make_universal_transfer, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_320make_universal_transfer};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_321make_universal_transfer(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("make_universal_transfer (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 5947, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 5947, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "make_universal_transfer", 1) < 0) __PYX_ERR(0, 5947, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("make_universal_transfer", 1, 1, 1, i); __PYX_ERR(0, 5947, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 5947, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("make_universal_transfer", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 5947, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.make_universal_transfer", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_320make_universal_transfer(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_320make_universal_transfer(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("make_universal_transfer", 0);

  /* "unicorn_binance_rest_api/manager.py":5978
 * 
 *         """
 *         return self._request_margin_api('post', 'sub-account/universalTransfer', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_universal_transfer_history(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5978, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 5978, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 5978, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[90], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5978, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":5947
 *         return self._request_margin_api('get', 'sub-account/transfer/subUserHistory', True, data=params)
 * 
 *     def make_universal_transfer(self, **params):             # <<<<<<<<<<<<<<
 *         """Universal Transfer (For Master Account)
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.make_universal_transfer", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":5980
 *         return self._request_margin_api('post', 'sub-account/universalTransfer', True, data=params)
 * 
 *     def get_universal_transfer_history(self, **params):             # <<<<<<<<<<<<<<
 *         """Universal Transfer (For Master Account)
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_323get_universal_transfer_history(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_322get_universal_transfer_history, "Universal Transfer (For Master Account)\n\n        https://binance-docs.github.io/apidocs/spot/en/#query-universal-transfer-history\n\n        :param fromEmail: optional\n        :type fromEmail: str\n        :param toEmail: optional\n        :type toEmail: str\n        :param startTime: optional\n        :type startTime: int\n        :param endTime: optional\n        :type endTime: int\n        :param page: optional\n        :type page: int\n        :param limit: optional\n        :type limit: int\n        :param recvWindow: optional\n        :type recvWindow: int\n\n        :returns: API response\n\n        .. code-block:: python\n\n            [\n              {\n                \"tranId\":11945860693,\n                \"fromEmail\":\"master@test.com\",\n                \"toEmail\":\"subaccount1@test.com\",\n                \"asset\":\"BTC\",\n                \"amount\":\"0.1\",\n                \"fromAccountType\":\"SPOT\",\n                \"toAccountType\":\"COIN_FUTURE\",\n                \"status\":\"SUCCESS\",\n                \"createTimeStamp\":1544433325000\n              },\n              {\n                \"tranId\":11945857955,\n                \"fromEmail\":\"master@test.com\",\n                \"toEmail\":\"subaccount2@test.com\",\n                \"asset\":\"ETH\",\n                \"amount\":\"0.2\",\n                \"fromAccountType\":\"SPOT\",\n                \"toAccountType\":\"USDT_FUTURE\",\n                \"status\":\"SUCCESS\",\n                \"createTimeStamp\":1544433326000\n              }\n            ]\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_323get_universal_transfer_history = {"get_universal_transfer_history", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_323get_universal_transfer_history, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_322get_universal_transfer_history};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_323get_universal_transfer_history(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_universal_transfer_history (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 5980, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 5980, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "get_universal_transfer_history", 1) < 0) __PYX_ERR(0, 5980, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_universal_transfer_history", 1, 1, 1, i); __PYX_ERR(0, 5980, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 5980, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_universal_transfer_history", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 5980, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_universal_transfer_history", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_322get_universal_transfer_history(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_322get_universal_transfer_history(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_universal_transfer_history", 0);

  /* "unicorn_binance_rest_api/manager.py":6032
 * 
 *         """
 *         return self._request_margin_api('get', 'sub-account/universalTransfer', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_used_weight(self, cached: bool = False, cached_timeout: Optional[float] = None) -> Optional[dict]:
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6032, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6032, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6032, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[91], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6032, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":5980
 *         return self._request_margin_api('post', 'sub-account/universalTransfer', True, data=params)
 * 
 *     def get_universal_transfer_history(self, **params):             # <<<<<<<<<<<<<<
 *         """Universal Transfer (For Master Account)
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_universal_transfer_history", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6034
 *         return self._request_margin_api('get', 'sub-account/universalTransfer', True, data=params)
 * 
 *     def get_used_weight(self, cached: bool = False, cached_timeout: Optional[float] = None) -> Optional[dict]:             # <<<<<<<<<<<<<<
 *         """
 *         Get the used weight from Binance endpoints (weight costs: 1)
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_325get_used_weight(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_324get_used_weight, "\n        Get the used weight from Binance endpoints (weight costs: 1)\n\n        https://github.com/binance-us/binance-official-api-docs/blob/master/rest-api.md#limits\n\n        :param cached: Set to `True` if you want to get the cached instead of the current `used_weight`.\n        :type cached: bool\n        :param cached_timeout: If the cache is older than the timeout window, a new request is sent to the Binance API\n                               for a current value.\n        :type cached_timeout: float\n\n        :return: dict\n\n        .. code-block:: python\n\n            {\n             'status_code': 200, (int)\n             'timestamp': 1626079769.0, (float)\n             'weight': '5' (int)\n            }\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_325get_used_weight = {"get_used_weight", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_325get_used_weight, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_324get_used_weight};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_325get_used_weight(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_cached = 0;
  PyObject *__pyx_v_cached_timeout = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[3] = {0,0,0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_used_weight (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,&__pyx_mstate_global->__pyx_n_u_cached,&__pyx_mstate_global->__pyx_n_u_cached_timeout,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6034, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  3:
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 6034, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 6034, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6034, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "get_used_weight", 0) < 0) __PYX_ERR(0, 6034, __pyx_L3_error)
      if (!values[1]) values[1] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_False)));
      if (!values[2]) values[2] = __Pyx_NewRef(((PyObject*)Py_None));
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_used_weight", 0, 1, 3, i); __PYX_ERR(0, 6034, __pyx_L3_error) }
      }
    } else {
      switch (__pyx_nargs) {
        case  3:
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 6034, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 6034, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6034, __pyx_L3_error)
        break;
        default: goto __pyx_L5_argtuple_error;
      }
      if (!values[1]) values[1] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_False)));
      if (!values[2]) values[2] = __Pyx_NewRef(((PyObject*)Py_None));
    }
    __pyx_v_self = values[0];
    __pyx_v_cached = values[1];
    __pyx_v_cached_timeout = ((PyObject*)values[2]);
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_used_weight", 0, 1, 3, __pyx_nargs); __PYX_ERR(0, 6034, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_used_weight", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_cached_timeout), (&PyFloat_Type), 1, "cached_timeout", 2))) __PYX_ERR(0, 6034, __pyx_L1_error)
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_324get_used_weight(__pyx_self, __pyx_v_self, __pyx_v_cached, __pyx_v_cached_timeout);

  /* function exit code */
  goto __pyx_L0;
  __pyx_L1_error:;
  __pyx_r = NULL;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  goto __pyx_L7_cleaned_up;
  __pyx_L0:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __pyx_L7_cleaned_up:;
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_324get_used_weight(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_cached, PyObject *__pyx_v_cached_timeout) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  PyObject *__pyx_t_4 = NULL;
  size_t __pyx_t_5;
  PyObject *__pyx_t_6 = NULL;
  PyObject *__pyx_t_7 = NULL;
  PyObject *__pyx_t_8 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_used_weight", 0);

  /* "unicorn_binance_rest_api/manager.py":6056
 *             }
 *         """
 *         if cached is True:             # <<<<<<<<<<<<<<
 *             if cached_timeout is not None and self.used_weight is None:
 *                 self.ping()
*/
  __pyx_t_1 = (__pyx_v_cached == Py_True);
  if (__pyx_t_1) {

    /* "unicorn_binance_rest_api/manager.py":6057
 *         """
 *         if cached is True:
 *             if cached_timeout is not None and self.used_weight is None:             # <<<<<<<<<<<<<<
 *                 self.ping()
 *             elif cached_timeout is not None and self.used_weight is not None:
*/
    __pyx_t_2 = (__pyx_v_cached_timeout != ((PyObject*)Py_None));
    if (__pyx_t_2) {
    } else {
      __pyx_t_1 = __pyx_t_2;
      goto __pyx_L5_bool_binop_done;
    }
    __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_used_weight); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6057, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_2 = (__pyx_t_3 == Py_None);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_t_1 = __pyx_t_2;
    __pyx_L5_bool_binop_done:;
    if (__pyx_t_1) {

      /* "unicorn_binance_rest_api/manager.py":6058
 *         if cached is True:
 *             if cached_timeout is not None and self.used_weight is None:
 *                 self.ping()             # <<<<<<<<<<<<<<
 *             elif cached_timeout is not None and self.used_weight is not None:
 *                 if self.used_weight['timestamp'] < (time.time() - cached_timeout):
*/
      __pyx_t_4 = __pyx_v_self;
      __Pyx_INCREF(__pyx_t_4);
      __pyx_t_5 = 0;
      {
        PyObject *__pyx_callargs[2] = {__pyx_t_4, NULL};
        __pyx_t_3 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_ping, __pyx_callargs+__pyx_t_5, (1-__pyx_t_5) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6058, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_3);
      }
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;

      /* "unicorn_binance_rest_api/manager.py":6057
 *         """
 *         if cached is True:
 *             if cached_timeout is not None and self.used_weight is None:             # <<<<<<<<<<<<<<
 *                 self.ping()
 *             elif cached_timeout is not None and self.used_weight is not None:
*/
      goto __pyx_L4;
    }

    /* "unicorn_binance_rest_api/manager.py":6059
 *             if cached_timeout is not None and self.used_weight is None:
 *                 self.ping()
 *             elif cached_timeout is not None and self.used_weight is not None:             # <<<<<<<<<<<<<<
 *                 if self.used_weight['timestamp'] < (time.time() - cached_timeout):
 *                     self.ping()
*/
    __pyx_t_2 = (__pyx_v_cached_timeout != ((PyObject*)Py_None));
    if (__pyx_t_2) {
    } else {
      __pyx_t_1 = __pyx_t_2;
      goto __pyx_L7_bool_binop_done;
    }
    __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_used_weight); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6059, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_2 = (__pyx_t_3 != Py_None);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_t_1 = __pyx_t_2;
    __pyx_L7_bool_binop_done:;
    if (__pyx_t_1) {

      /* "unicorn_binance_rest_api/manager.py":6060
 *                 self.ping()
 *             elif cached_timeout is not None and self.used_weight is not None:
 *                 if self.used_weight['timestamp'] < (time.time() - cached_timeout):             # <<<<<<<<<<<<<<
 *                     self.ping()
 *         else:
*/
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_used_weight); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6060, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_4 = __Pyx_PyObject_Dict_GetItem(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_timestamp); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 6060, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_6 = NULL;
      __Pyx_GetModuleGlobalName(__pyx_t_7, __pyx_mstate_global->__pyx_n_u_time); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6060, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_7);
      __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_mstate_global->__pyx_n_u_time); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6060, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_8);
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __pyx_t_5 = 1;
      #if CYTHON_UNPACK_METHODS
      if (unlikely(PyMethod_Check(__pyx_t_8))) {
        __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_8);
        assert(__pyx_t_6);
        PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_8);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(__pyx__function);
        __Pyx_DECREF_SET(__pyx_t_8, __pyx__function);
        __pyx_t_5 = 0;
      }
      #endif
      {
        PyObject *__pyx_callargs[2] = {__pyx_t_6, NULL};
        __pyx_t_3 = __Pyx_PyObject_FastCall(__pyx_t_8, __pyx_callargs+__pyx_t_5, (1-__pyx_t_5) | (__pyx_t_5*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6060, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_3);
      }
      __pyx_t_8 = PyNumber_Subtract(__pyx_t_3, __pyx_v_cached_timeout); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6060, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_8);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_3 = PyObject_RichCompare(__pyx_t_4, __pyx_t_8, Py_LT); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6060, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 6060, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (__pyx_t_1) {

        /* "unicorn_binance_rest_api/manager.py":6061
 *             elif cached_timeout is not None and self.used_weight is not None:
 *                 if self.used_weight['timestamp'] < (time.time() - cached_timeout):
 *                     self.ping()             # <<<<<<<<<<<<<<
 *         else:
 *             self.ping()
*/
        __pyx_t_8 = __pyx_v_self;
        __Pyx_INCREF(__pyx_t_8);
        __pyx_t_5 = 0;
        {
          PyObject *__pyx_callargs[2] = {__pyx_t_8, NULL};
          __pyx_t_3 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_ping, __pyx_callargs+__pyx_t_5, (1-__pyx_t_5) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
          __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
          if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6061, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_3);
        }
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;

        /* "unicorn_binance_rest_api/manager.py":6060
 *                 self.ping()
 *             elif cached_timeout is not None and self.used_weight is not None:
 *                 if self.used_weight['timestamp'] < (time.time() - cached_timeout):             # <<<<<<<<<<<<<<
 *                     self.ping()
 *         else:
*/
      }

      /* "unicorn_binance_rest_api/manager.py":6059
 *             if cached_timeout is not None and self.used_weight is None:
 *                 self.ping()
 *             elif cached_timeout is not None and self.used_weight is not None:             # <<<<<<<<<<<<<<
 *                 if self.used_weight['timestamp'] < (time.time() - cached_timeout):
 *                     self.ping()
*/
    }
    __pyx_L4:;

    /* "unicorn_binance_rest_api/manager.py":6056
 *             }
 *         """
 *         if cached is True:             # <<<<<<<<<<<<<<
 *             if cached_timeout is not None and self.used_weight is None:
 *                 self.ping()
*/
    goto __pyx_L3;
  }

  /* "unicorn_binance_rest_api/manager.py":6063
 *                     self.ping()
 *         else:
 *             self.ping()             # <<<<<<<<<<<<<<
 *         return self.used_weight
 * 
*/
  /*else*/ {
    __pyx_t_8 = __pyx_v_self;
    __Pyx_INCREF(__pyx_t_8);
    __pyx_t_5 = 0;
    {
      PyObject *__pyx_callargs[2] = {__pyx_t_8, NULL};
      __pyx_t_3 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_ping, __pyx_callargs+__pyx_t_5, (1-__pyx_t_5) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
      __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
      if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6063, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_3);
    }
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  }
  __pyx_L3:;

  /* "unicorn_binance_rest_api/manager.py":6064
 *         else:
 *             self.ping()
 *         return self.used_weight             # <<<<<<<<<<<<<<
 * 
 *     # Futures API
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_used_weight); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6064, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  if (!(likely(PyDict_CheckExact(__pyx_t_3))||((__pyx_t_3) == Py_None) || __Pyx_RaiseUnexpectedTypeError("dict", __pyx_t_3))) __PYX_ERR(0, 6064, __pyx_L1_error)
  __pyx_r = ((PyObject*)__pyx_t_3);
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6034
 *         return self._request_margin_api('get', 'sub-account/universalTransfer', True, data=params)
 * 
 *     def get_used_weight(self, cached: bool = False, cached_timeout: Optional[float] = None) -> Optional[dict]:             # <<<<<<<<<<<<<<
 *         """
 *         Get the used weight from Binance endpoints (weight costs: 1)
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_XDECREF(__pyx_t_8);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_used_weight", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6067
 * 
 *     # Futures API
 *     def futures_ping(self):             # <<<<<<<<<<<<<<
 *         """Test connectivity to the Rest API
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_327futures_ping(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_326futures_ping, "Test connectivity to the Rest API\n\n        https://binance-docs.github.io/apidocs/futures/en/#test-connectivity\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_327futures_ping = {"futures_ping", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_327futures_ping, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_326futures_ping};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_327futures_ping(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_ping (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6067, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6067, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "futures_ping", 0) < 0) __PYX_ERR(0, 6067, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_ping", 1, 1, 1, i); __PYX_ERR(0, 6067, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6067, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_ping", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6067, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_ping", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_326futures_ping(__pyx_self, __pyx_v_self);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_326futures_ping(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_ping", 0);

  /* "unicorn_binance_rest_api/manager.py":6073
 * 
 *         """
 *         return self._request_futures_api('get', 'ping')             # <<<<<<<<<<<<<<
 * 
 *     def futures_time(self):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6073, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[92], NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6073, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_r = __pyx_t_2;
  __pyx_t_2 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6067
 * 
 *     # Futures API
 *     def futures_ping(self):             # <<<<<<<<<<<<<<
 *         """Test connectivity to the Rest API
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_ping", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6075
 *         return self._request_futures_api('get', 'ping')
 * 
 *     def futures_time(self):             # <<<<<<<<<<<<<<
 *         """Test connectivity to the Rest API and get the current server time.
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_329futures_time(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_328futures_time, "Test connectivity to the Rest API and get the current server time.\n\n        https://binance-docs.github.io/apidocs/futures/en/#check-server-time\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_329futures_time = {"futures_time", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_329futures_time, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_328futures_time};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_329futures_time(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_time (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6075, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6075, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "futures_time", 0) < 0) __PYX_ERR(0, 6075, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_time", 1, 1, 1, i); __PYX_ERR(0, 6075, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6075, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_time", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6075, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_time", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_328futures_time(__pyx_self, __pyx_v_self);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_328futures_time(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_time", 0);

  /* "unicorn_binance_rest_api/manager.py":6081
 * 
 *         """
 *         return self._request_futures_api('get', 'time')             # <<<<<<<<<<<<<<
 * 
 *     def futures_exchange_info(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6081, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[93], NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6081, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_r = __pyx_t_2;
  __pyx_t_2 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6075
 *         return self._request_futures_api('get', 'ping')
 * 
 *     def futures_time(self):             # <<<<<<<<<<<<<<
 *         """Test connectivity to the Rest API and get the current server time.
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_time", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6083
 *         return self._request_futures_api('get', 'time')
 * 
 *     def futures_exchange_info(self, **params):             # <<<<<<<<<<<<<<
 *         """Current exchange trading rules and symbol information
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_331futures_exchange_info(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_330futures_exchange_info, "Current exchange trading rules and symbol information\n\n        https://binance-docs.github.io/apidocs/futures/en/#exchange-information-market_data\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_331futures_exchange_info = {"futures_exchange_info", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_331futures_exchange_info, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_330futures_exchange_info};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_331futures_exchange_info(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_exchange_info (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6083, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6083, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "futures_exchange_info", 1) < 0) __PYX_ERR(0, 6083, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_exchange_info", 1, 1, 1, i); __PYX_ERR(0, 6083, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6083, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_exchange_info", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6083, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_exchange_info", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_330futures_exchange_info(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_330futures_exchange_info(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_exchange_info", 0);

  /* "unicorn_binance_rest_api/manager.py":6089
 * 
 *         """
 *         return self._request_futures_api('get', 'exchangeInfo', data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_order_book(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6089, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6089, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6089, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[94], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6089, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6083
 *         return self._request_futures_api('get', 'time')
 * 
 *     def futures_exchange_info(self, **params):             # <<<<<<<<<<<<<<
 *         """Current exchange trading rules and symbol information
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_exchange_info", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6091
 *         return self._request_futures_api('get', 'exchangeInfo', data=params)
 * 
 *     def futures_order_book(self, **params):             # <<<<<<<<<<<<<<
 *         """Get the Order Book for the market
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_333futures_order_book(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_332futures_order_book, "Get the Order Book for the market\n\n        https://binance-docs.github.io/apidocs/futures/en/#order-book-market_data\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_333futures_order_book = {"futures_order_book", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_333futures_order_book, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_332futures_order_book};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_333futures_order_book(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_order_book (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6091, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6091, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "futures_order_book", 1) < 0) __PYX_ERR(0, 6091, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_order_book", 1, 1, 1, i); __PYX_ERR(0, 6091, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6091, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_order_book", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6091, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_order_book", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_332futures_order_book(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_332futures_order_book(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_order_book", 0);

  /* "unicorn_binance_rest_api/manager.py":6097
 * 
 *         """
 *         return self._request_futures_api('get', 'depth', data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_recent_trades(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6097, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6097, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6097, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[95], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6097, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6091
 *         return self._request_futures_api('get', 'exchangeInfo', data=params)
 * 
 *     def futures_order_book(self, **params):             # <<<<<<<<<<<<<<
 *         """Get the Order Book for the market
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_order_book", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6099
 *         return self._request_futures_api('get', 'depth', data=params)
 * 
 *     def futures_recent_trades(self, **params):             # <<<<<<<<<<<<<<
 *         """Get recent trades (up to last 500).
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_335futures_recent_trades(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_334futures_recent_trades, "Get recent trades (up to last 500).\n\n        https://binance-docs.github.io/apidocs/futures/en/#recent-trades-list-market_data\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_335futures_recent_trades = {"futures_recent_trades", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_335futures_recent_trades, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_334futures_recent_trades};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_335futures_recent_trades(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_recent_trades (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6099, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6099, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "futures_recent_trades", 1) < 0) __PYX_ERR(0, 6099, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_recent_trades", 1, 1, 1, i); __PYX_ERR(0, 6099, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6099, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_recent_trades", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6099, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_recent_trades", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_334futures_recent_trades(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_334futures_recent_trades(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_recent_trades", 0);

  /* "unicorn_binance_rest_api/manager.py":6105
 * 
 *         """
 *         return self._request_futures_api('get', 'trades', data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_historical_trades(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6105, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6105, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6105, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[96], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6105, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6099
 *         return self._request_futures_api('get', 'depth', data=params)
 * 
 *     def futures_recent_trades(self, **params):             # <<<<<<<<<<<<<<
 *         """Get recent trades (up to last 500).
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_recent_trades", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6107
 *         return self._request_futures_api('get', 'trades', data=params)
 * 
 *     def futures_historical_trades(self, **params):             # <<<<<<<<<<<<<<
 *         """Get older market historical trades.
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_337futures_historical_trades(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_336futures_historical_trades, "Get older market historical trades.\n\n        https://binance-docs.github.io/apidocs/futures/en/#old-trades-lookup-market_data\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_337futures_historical_trades = {"futures_historical_trades", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_337futures_historical_trades, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_336futures_historical_trades};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_337futures_historical_trades(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_historical_trades (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6107, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6107, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "futures_historical_trades", 1) < 0) __PYX_ERR(0, 6107, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_historical_trades", 1, 1, 1, i); __PYX_ERR(0, 6107, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6107, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_historical_trades", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6107, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_historical_trades", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_336futures_historical_trades(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_336futures_historical_trades(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_historical_trades", 0);

  /* "unicorn_binance_rest_api/manager.py":6113
 * 
 *         """
 *         return self._request_futures_api('get', 'historicalTrades', data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_aggregate_trades(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6113, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6113, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6113, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[97], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6113, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6107
 *         return self._request_futures_api('get', 'trades', data=params)
 * 
 *     def futures_historical_trades(self, **params):             # <<<<<<<<<<<<<<
 *         """Get older market historical trades.
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_historical_trades", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6115
 *         return self._request_futures_api('get', 'historicalTrades', data=params)
 * 
 *     def futures_aggregate_trades(self, **params):             # <<<<<<<<<<<<<<
 *         """Get compressed, aggregate trades. Trades that fill at the time, from the same order, with the same
 *         price will have the quantity aggregated.
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_339futures_aggregate_trades(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_338futures_aggregate_trades, "Get compressed, aggregate trades. Trades that fill at the time, from the same order, with the same\n        price will have the quantity aggregated.\n\n        https://binance-docs.github.io/apidocs/futures/en/#compressed-aggregate-trades-list-market_data\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_339futures_aggregate_trades = {"futures_aggregate_trades", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_339futures_aggregate_trades, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_338futures_aggregate_trades};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_339futures_aggregate_trades(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_aggregate_trades (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6115, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6115, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "futures_aggregate_trades", 1) < 0) __PYX_ERR(0, 6115, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_aggregate_trades", 1, 1, 1, i); __PYX_ERR(0, 6115, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6115, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_aggregate_trades", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6115, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_aggregate_trades", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_338futures_aggregate_trades(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_338futures_aggregate_trades(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_aggregate_trades", 0);

  /* "unicorn_binance_rest_api/manager.py":6122
 * 
 *         """
 *         return self._request_futures_api('get', 'aggTrades', data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_klines(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6122, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6122, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6122, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[98], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6122, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6115
 *         return self._request_futures_api('get', 'historicalTrades', data=params)
 * 
 *     def futures_aggregate_trades(self, **params):             # <<<<<<<<<<<<<<
 *         """Get compressed, aggregate trades. Trades that fill at the time, from the same order, with the same
 *         price will have the quantity aggregated.
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_aggregate_trades", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6124
 *         return self._request_futures_api('get', 'aggTrades', data=params)
 * 
 *     def futures_klines(self, **params):             # <<<<<<<<<<<<<<
 *         """Kline/candlestick bars for a symbol. Klines are uniquely identified by their open time.
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_341futures_klines(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_340futures_klines, "Kline/candlestick bars for a symbol. Klines are uniquely identified by their open time.\n\n        https://binance-docs.github.io/apidocs/futures/en/#kline-candlestick-data-market_data\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_341futures_klines = {"futures_klines", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_341futures_klines, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_340futures_klines};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_341futures_klines(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_klines (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6124, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6124, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "futures_klines", 1) < 0) __PYX_ERR(0, 6124, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_klines", 1, 1, 1, i); __PYX_ERR(0, 6124, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6124, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_klines", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6124, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_klines", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_340futures_klines(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_340futures_klines(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_klines", 0);

  /* "unicorn_binance_rest_api/manager.py":6130
 * 
 *         """
 *         return self._request_futures_api('get', 'klines', data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_mark_price(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6130, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6130, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6130, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[99], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6130, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6124
 *         return self._request_futures_api('get', 'aggTrades', data=params)
 * 
 *     def futures_klines(self, **params):             # <<<<<<<<<<<<<<
 *         """Kline/candlestick bars for a symbol. Klines are uniquely identified by their open time.
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_klines", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6132
 *         return self._request_futures_api('get', 'klines', data=params)
 * 
 *     def futures_mark_price(self, **params):             # <<<<<<<<<<<<<<
 *         """Get Mark Price and Funding Rate
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_343futures_mark_price(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_342futures_mark_price, "Get Mark Price and Funding Rate\n\n        https://binance-docs.github.io/apidocs/futures/en/#mark-price-market_data\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_343futures_mark_price = {"futures_mark_price", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_343futures_mark_price, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_342futures_mark_price};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_343futures_mark_price(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_mark_price (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6132, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6132, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "futures_mark_price", 1) < 0) __PYX_ERR(0, 6132, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_mark_price", 1, 1, 1, i); __PYX_ERR(0, 6132, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6132, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_mark_price", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6132, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_mark_price", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_342futures_mark_price(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_342futures_mark_price(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_mark_price", 0);

  /* "unicorn_binance_rest_api/manager.py":6138
 * 
 *         """
 *         return self._request_futures_api('get', 'premiumIndex', data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_funding_rate(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6138, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6138, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6138, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[100], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6138, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6132
 *         return self._request_futures_api('get', 'klines', data=params)
 * 
 *     def futures_mark_price(self, **params):             # <<<<<<<<<<<<<<
 *         """Get Mark Price and Funding Rate
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_mark_price", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6140
 *         return self._request_futures_api('get', 'premiumIndex', data=params)
 * 
 *     def futures_funding_rate(self, **params):             # <<<<<<<<<<<<<<
 *         """Get funding rate history
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_345futures_funding_rate(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_344futures_funding_rate, "Get funding rate history\n\n        https://binance-docs.github.io/apidocs/futures/en/#get-funding-rate-history-market_data\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_345futures_funding_rate = {"futures_funding_rate", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_345futures_funding_rate, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_344futures_funding_rate};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_345futures_funding_rate(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_funding_rate (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6140, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6140, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "futures_funding_rate", 1) < 0) __PYX_ERR(0, 6140, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_funding_rate", 1, 1, 1, i); __PYX_ERR(0, 6140, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6140, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_funding_rate", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6140, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_funding_rate", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_344futures_funding_rate(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_344futures_funding_rate(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_funding_rate", 0);

  /* "unicorn_binance_rest_api/manager.py":6146
 * 
 *         """
 *         return self._request_futures_api('get', 'fundingRate', data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_ticker(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6146, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6146, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6146, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[101], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6146, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6140
 *         return self._request_futures_api('get', 'premiumIndex', data=params)
 * 
 *     def futures_funding_rate(self, **params):             # <<<<<<<<<<<<<<
 *         """Get funding rate history
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_funding_rate", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6148
 *         return self._request_futures_api('get', 'fundingRate', data=params)
 * 
 *     def futures_ticker(self, **params):             # <<<<<<<<<<<<<<
 *         """24 hour rolling window price change statistics.
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_347futures_ticker(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_346futures_ticker, "24 hour rolling window price change statistics.\n\n        https://binance-docs.github.io/apidocs/futures/en/#24hr-ticker-price-change-statistics-market_data\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_347futures_ticker = {"futures_ticker", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_347futures_ticker, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_346futures_ticker};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_347futures_ticker(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_ticker (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6148, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6148, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "futures_ticker", 1) < 0) __PYX_ERR(0, 6148, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_ticker", 1, 1, 1, i); __PYX_ERR(0, 6148, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6148, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_ticker", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6148, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_ticker", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_346futures_ticker(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_346futures_ticker(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_ticker", 0);

  /* "unicorn_binance_rest_api/manager.py":6154
 * 
 *         """
 *         return self._request_futures_api('get', 'ticker/24hr', data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_symbol_ticker(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6154, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6154, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6154, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[102], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6154, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6148
 *         return self._request_futures_api('get', 'fundingRate', data=params)
 * 
 *     def futures_ticker(self, **params):             # <<<<<<<<<<<<<<
 *         """24 hour rolling window price change statistics.
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_ticker", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6156
 *         return self._request_futures_api('get', 'ticker/24hr', data=params)
 * 
 *     def futures_symbol_ticker(self, **params):             # <<<<<<<<<<<<<<
 *         """Latest price for a symbol or symbols.
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_349futures_symbol_ticker(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_348futures_symbol_ticker, "Latest price for a symbol or symbols.\n\n        https://binance-docs.github.io/apidocs/futures/en/#symbol-price-ticker-market_data\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_349futures_symbol_ticker = {"futures_symbol_ticker", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_349futures_symbol_ticker, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_348futures_symbol_ticker};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_349futures_symbol_ticker(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_symbol_ticker (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6156, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6156, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "futures_symbol_ticker", 1) < 0) __PYX_ERR(0, 6156, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_symbol_ticker", 1, 1, 1, i); __PYX_ERR(0, 6156, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6156, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_symbol_ticker", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6156, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_symbol_ticker", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_348futures_symbol_ticker(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_348futures_symbol_ticker(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_symbol_ticker", 0);

  /* "unicorn_binance_rest_api/manager.py":6162
 * 
 *         """
 *         return self._request_futures_api('get', 'ticker/price', data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_orderbook_ticker(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6162, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6162, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6162, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[103], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6162, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6156
 *         return self._request_futures_api('get', 'ticker/24hr', data=params)
 * 
 *     def futures_symbol_ticker(self, **params):             # <<<<<<<<<<<<<<
 *         """Latest price for a symbol or symbols.
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_symbol_ticker", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6164
 *         return self._request_futures_api('get', 'ticker/price', data=params)
 * 
 *     def futures_orderbook_ticker(self, **params):             # <<<<<<<<<<<<<<
 *         """Best price/qty on the order book for a symbol or symbols.
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_351futures_orderbook_ticker(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_350futures_orderbook_ticker, "Best price/qty on the order book for a symbol or symbols.\n\n        https://binance-docs.github.io/apidocs/futures/en/#symbol-order-book-ticker-market_data\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_351futures_orderbook_ticker = {"futures_orderbook_ticker", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_351futures_orderbook_ticker, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_350futures_orderbook_ticker};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_351futures_orderbook_ticker(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_orderbook_ticker (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6164, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6164, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "futures_orderbook_ticker", 1) < 0) __PYX_ERR(0, 6164, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_orderbook_ticker", 1, 1, 1, i); __PYX_ERR(0, 6164, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6164, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_orderbook_ticker", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6164, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_orderbook_ticker", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_350futures_orderbook_ticker(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_350futures_orderbook_ticker(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_orderbook_ticker", 0);

  /* "unicorn_binance_rest_api/manager.py":6170
 * 
 *         """
 *         return self._request_futures_api('get', 'ticker/bookTicker', data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_liquidation_orders(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6170, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6170, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6170, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[104], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6170, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6164
 *         return self._request_futures_api('get', 'ticker/price', data=params)
 * 
 *     def futures_orderbook_ticker(self, **params):             # <<<<<<<<<<<<<<
 *         """Best price/qty on the order book for a symbol or symbols.
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_orderbook_ticker", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6172
 *         return self._request_futures_api('get', 'ticker/bookTicker', data=params)
 * 
 *     def futures_liquidation_orders(self, **params):             # <<<<<<<<<<<<<<
 *         """Get all liquidation orders
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_353futures_liquidation_orders(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_352futures_liquidation_orders, "Get all liquidation orders\n\n        https://binance-docs.github.io/apidocs/futures/en/#get-all-liquidation-orders-market_data\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_353futures_liquidation_orders = {"futures_liquidation_orders", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_353futures_liquidation_orders, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_352futures_liquidation_orders};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_353futures_liquidation_orders(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_liquidation_orders (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6172, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6172, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "futures_liquidation_orders", 1) < 0) __PYX_ERR(0, 6172, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_liquidation_orders", 1, 1, 1, i); __PYX_ERR(0, 6172, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6172, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_liquidation_orders", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6172, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_liquidation_orders", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_352futures_liquidation_orders(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_352futures_liquidation_orders(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_liquidation_orders", 0);

  /* "unicorn_binance_rest_api/manager.py":6178
 * 
 *         """
 *         return self._request_futures_api('get', 'ticker/allForceOrders', data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_open_interest(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6178, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6178, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6178, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[105], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6178, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6172
 *         return self._request_futures_api('get', 'ticker/bookTicker', data=params)
 * 
 *     def futures_liquidation_orders(self, **params):             # <<<<<<<<<<<<<<
 *         """Get all liquidation orders
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_liquidation_orders", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6180
 *         return self._request_futures_api('get', 'ticker/allForceOrders', data=params)
 * 
 *     def futures_open_interest(self, **params):             # <<<<<<<<<<<<<<
 *         """Get present open interest of a specific symbol.
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_355futures_open_interest(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_354futures_open_interest, "Get present open interest of a specific symbol.\n\n        https://binance-docs.github.io/apidocs/futures/en/#open-interest-market_data\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_355futures_open_interest = {"futures_open_interest", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_355futures_open_interest, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_354futures_open_interest};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_355futures_open_interest(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_open_interest (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6180, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6180, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "futures_open_interest", 1) < 0) __PYX_ERR(0, 6180, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_open_interest", 1, 1, 1, i); __PYX_ERR(0, 6180, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6180, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_open_interest", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6180, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_open_interest", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_354futures_open_interest(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_354futures_open_interest(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_open_interest", 0);

  /* "unicorn_binance_rest_api/manager.py":6186
 * 
 *         """
 *         return self._request_futures_api('get', 'ticker/openInterest', data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_open_interest_hist(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6186, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6186, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6186, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[106], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6186, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6180
 *         return self._request_futures_api('get', 'ticker/allForceOrders', data=params)
 * 
 *     def futures_open_interest(self, **params):             # <<<<<<<<<<<<<<
 *         """Get present open interest of a specific symbol.
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_open_interest", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6188
 *         return self._request_futures_api('get', 'ticker/openInterest', data=params)
 * 
 *     def futures_open_interest_hist(self, **params):             # <<<<<<<<<<<<<<
 *         """Get open interest statistics of a specific symbol.
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_357futures_open_interest_hist(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_356futures_open_interest_hist, "Get open interest statistics of a specific symbol.\n\n        https://binance-docs.github.io/apidocs/futures/en/#open-interest-statistics\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_357futures_open_interest_hist = {"futures_open_interest_hist", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_357futures_open_interest_hist, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_356futures_open_interest_hist};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_357futures_open_interest_hist(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_open_interest_hist (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6188, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6188, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "futures_open_interest_hist", 1) < 0) __PYX_ERR(0, 6188, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_open_interest_hist", 1, 1, 1, i); __PYX_ERR(0, 6188, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6188, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_open_interest_hist", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6188, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_open_interest_hist", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_356futures_open_interest_hist(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_356futures_open_interest_hist(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_open_interest_hist", 0);

  /* "unicorn_binance_rest_api/manager.py":6194
 * 
 *         """
 *         return self._request_futures_data_api('get', 'openInterestHist', data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_leverage_bracket(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_data_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6194, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6194, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6194, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[107], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6194, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6188
 *         return self._request_futures_api('get', 'ticker/openInterest', data=params)
 * 
 *     def futures_open_interest_hist(self, **params):             # <<<<<<<<<<<<<<
 *         """Get open interest statistics of a specific symbol.
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_open_interest_hist", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6196
 *         return self._request_futures_data_api('get', 'openInterestHist', data=params)
 * 
 *     def futures_leverage_bracket(self, **params):             # <<<<<<<<<<<<<<
 *         """Notional and Leverage Brackets
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_359futures_leverage_bracket(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_358futures_leverage_bracket, "Notional and Leverage Brackets\n\n        https://binance-docs.github.io/apidocs/futures/en/#notional-and-leverage-brackets-market_data\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_359futures_leverage_bracket = {"futures_leverage_bracket", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_359futures_leverage_bracket, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_358futures_leverage_bracket};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_359futures_leverage_bracket(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_leverage_bracket (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6196, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6196, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "futures_leverage_bracket", 1) < 0) __PYX_ERR(0, 6196, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_leverage_bracket", 1, 1, 1, i); __PYX_ERR(0, 6196, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6196, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_leverage_bracket", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6196, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_leverage_bracket", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_358futures_leverage_bracket(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_358futures_leverage_bracket(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_leverage_bracket", 0);

  /* "unicorn_binance_rest_api/manager.py":6202
 * 
 *         """
 *         return self._request_futures_api('get', 'leverageBracket', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_account_transfer(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6202, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6202, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6202, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[108], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6202, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6196
 *         return self._request_futures_data_api('get', 'openInterestHist', data=params)
 * 
 *     def futures_leverage_bracket(self, **params):             # <<<<<<<<<<<<<<
 *         """Notional and Leverage Brackets
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_leverage_bracket", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6204
 *         return self._request_futures_api('get', 'leverageBracket', True, data=params)
 * 
 *     def futures_account_transfer(self, **params):             # <<<<<<<<<<<<<<
 *         """Execute transfer between spot account and futures account.
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_361futures_account_transfer(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_360futures_account_transfer, "Execute transfer between spot account and futures account.\n\n        https://binance-docs.github.io/apidocs/futures/en/#new-future-account-transfer\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_361futures_account_transfer = {"futures_account_transfer", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_361futures_account_transfer, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_360futures_account_transfer};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_361futures_account_transfer(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_account_transfer (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6204, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6204, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "futures_account_transfer", 1) < 0) __PYX_ERR(0, 6204, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_account_transfer", 1, 1, 1, i); __PYX_ERR(0, 6204, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6204, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_account_transfer", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6204, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_account_transfer", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_360futures_account_transfer(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_360futures_account_transfer(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_account_transfer", 0);

  /* "unicorn_binance_rest_api/manager.py":6210
 * 
 *         """
 *         return self._request_margin_api('post', 'futures/transfer', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_auto_cancel_all_open_orders(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6210, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6210, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6210, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[109], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6210, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6204
 *         return self._request_futures_api('get', 'leverageBracket', True, data=params)
 * 
 *     def futures_account_transfer(self, **params):             # <<<<<<<<<<<<<<
 *         """Execute transfer between spot account and futures account.
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_account_transfer", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6212
 *         return self._request_margin_api('post', 'futures/transfer', True, data=params)
 * 
 *     def futures_auto_cancel_all_open_orders(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Cancel all open orders of the specified symbol at the end of the specified countdown.
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_363futures_auto_cancel_all_open_orders(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_362futures_auto_cancel_all_open_orders, "\n        Cancel all open orders of the specified symbol at the end of the specified countdown.\n\n        https://binance-docs.github.io/apidocs/futures/en/#auto-cancel-all-open-orders-trade\n\n        :param symbol: mandatory\n        :type symbol: str\n        :param countdownTime: mandatory\n        :type countdownTime: int\n        :param recvWindow: optional\n        :type recvWindow: int\n        :returns: API response\n\n        .. code-block:: python\n\n            {\n                \"symbol\": \"BTCUSDT\",\n                \"countdownTime\": \"100000\"\n            }\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_363futures_auto_cancel_all_open_orders = {"futures_auto_cancel_all_open_orders", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_363futures_auto_cancel_all_open_orders, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_362futures_auto_cancel_all_open_orders};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_363futures_auto_cancel_all_open_orders(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_auto_cancel_all_open_orders (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6212, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6212, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "futures_auto_cancel_all_open_orders", 1) < 0) __PYX_ERR(0, 6212, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_auto_cancel_all_open_orders", 1, 1, 1, i); __PYX_ERR(0, 6212, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6212, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_auto_cancel_all_open_orders", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6212, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_auto_cancel_all_open_orders", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_362futures_auto_cancel_all_open_orders(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_362futures_auto_cancel_all_open_orders(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_auto_cancel_all_open_orders", 0);

  /* "unicorn_binance_rest_api/manager.py":6236
 * 
 *         """
 *         return self._request_futures_api('post', 'countdownCancelAll', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_commission_rate(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6236, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6236, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6236, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[110], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6236, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6212
 *         return self._request_margin_api('post', 'futures/transfer', True, data=params)
 * 
 *     def futures_auto_cancel_all_open_orders(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Cancel all open orders of the specified symbol at the end of the specified countdown.
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_auto_cancel_all_open_orders", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6238
 *         return self._request_futures_api('post', 'countdownCancelAll', True, data=params)
 * 
 *     def futures_commission_rate(self, **params):             # <<<<<<<<<<<<<<
 *         """Get commission rate (user data)
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_365futures_commission_rate(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_364futures_commission_rate, "Get commission rate (user data)\n\n        https://binance-docs.github.io/apidocs/futures/en/#user-commission-rate-user_data\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_365futures_commission_rate = {"futures_commission_rate", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_365futures_commission_rate, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_364futures_commission_rate};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_365futures_commission_rate(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_commission_rate (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6238, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6238, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "futures_commission_rate", 1) < 0) __PYX_ERR(0, 6238, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_commission_rate", 1, 1, 1, i); __PYX_ERR(0, 6238, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6238, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_commission_rate", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6238, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_commission_rate", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_364futures_commission_rate(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_364futures_commission_rate(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_commission_rate", 0);

  /* "unicorn_binance_rest_api/manager.py":6244
 * 
 *         """
 *         return self._request_futures_coin_api("get", "commissionRate", version=1, signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def transfer_history(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_coin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6244, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(3); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6244, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_version_2, __pyx_mstate_global->__pyx_int_1) < 0) __PYX_ERR(0, 6244, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_signed, Py_True) < 0) __PYX_ERR(0, 6244, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6244, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[111], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6244, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6238
 *         return self._request_futures_api('post', 'countdownCancelAll', True, data=params)
 * 
 *     def futures_commission_rate(self, **params):             # <<<<<<<<<<<<<<
 *         """Get commission rate (user data)
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_commission_rate", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6246
 *         return self._request_futures_coin_api("get", "commissionRate", version=1, signed=True, data=params)
 * 
 *     def transfer_history(self, **params):             # <<<<<<<<<<<<<<
 *         """Get future account transaction history list
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_367transfer_history(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_366transfer_history, "Get future account transaction history list\n\n        https://binance-docs.github.io/apidocs/futures/en/#get-future-account-transaction-history-list-user_data\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_367transfer_history = {"transfer_history", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_367transfer_history, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_366transfer_history};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_367transfer_history(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("transfer_history (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6246, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6246, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "transfer_history", 1) < 0) __PYX_ERR(0, 6246, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("transfer_history", 1, 1, 1, i); __PYX_ERR(0, 6246, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6246, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("transfer_history", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6246, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.transfer_history", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_366transfer_history(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_366transfer_history(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("transfer_history", 0);

  /* "unicorn_binance_rest_api/manager.py":6252
 * 
 *         """
 *         return self._request_margin_api('get', 'futures/transfer', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_create_order(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6252, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6252, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6252, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[112], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6252, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6246
 *         return self._request_futures_coin_api("get", "commissionRate", version=1, signed=True, data=params)
 * 
 *     def transfer_history(self, **params):             # <<<<<<<<<<<<<<
 *         """Get future account transaction history list
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.transfer_history", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6254
 *         return self._request_margin_api('get', 'futures/transfer', True, data=params)
 * 
 *     def futures_create_order(self, **params):             # <<<<<<<<<<<<<<
 *         """Send in a new order.
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_369futures_create_order(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_368futures_create_order, "Send in a new order.\n\n        https://binance-docs.github.io/apidocs/futures/en/#new-order-trade\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_369futures_create_order = {"futures_create_order", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_369futures_create_order, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_368futures_create_order};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_369futures_create_order(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_create_order (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6254, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6254, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "futures_create_order", 1) < 0) __PYX_ERR(0, 6254, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_create_order", 1, 1, 1, i); __PYX_ERR(0, 6254, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6254, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_create_order", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6254, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_create_order", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_368futures_create_order(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_368futures_create_order(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_create_order", 0);

  /* "unicorn_binance_rest_api/manager.py":6260
 * 
 *         """
 *         return self._request_futures_api('post', 'order', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_place_batch_order(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6260, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6260, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6260, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[113], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6260, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6254
 *         return self._request_margin_api('get', 'futures/transfer', True, data=params)
 * 
 *     def futures_create_order(self, **params):             # <<<<<<<<<<<<<<
 *         """Send in a new order.
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_create_order", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6262
 *         return self._request_futures_api('post', 'order', True, data=params)
 * 
 *     def futures_place_batch_order(self, **params):             # <<<<<<<<<<<<<<
 *         """Send in new orders.
 *         https://binance-docs.github.io/apidocs/delivery/en/#place-multiple-orders-trade
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_371futures_place_batch_order(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_370futures_place_batch_order, "Send in new orders.\n        https://binance-docs.github.io/apidocs/delivery/en/#place-multiple-orders-trade\n        To avoid modifying the existing signature generation and parameter order logic,\n        the url encoding is done on the special query param, batchOrders, in the early stage.\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_371futures_place_batch_order = {"futures_place_batch_order", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_371futures_place_batch_order, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_370futures_place_batch_order};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_371futures_place_batch_order(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_place_batch_order (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6262, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6262, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "futures_place_batch_order", 1) < 0) __PYX_ERR(0, 6262, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_place_batch_order", 1, 1, 1, i); __PYX_ERR(0, 6262, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6262, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_place_batch_order", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6262, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_place_batch_order", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_370futures_place_batch_order(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_370futures_place_batch_order(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_v_query_string = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  size_t __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_place_batch_order", 0);

  /* "unicorn_binance_rest_api/manager.py":6268
 *         the url encoding is done on the special query param, batchOrders, in the early stage.
 *         """
 *         query_string = urlencode(params)             # <<<<<<<<<<<<<<
 *         query_string = query_string.replace('%27', '%22')
 *         params['batchOrders'] = query_string[12:]
*/
  __pyx_t_2 = NULL;
  __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_urlencode); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6268, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __pyx_t_4 = 1;
  #if CYTHON_UNPACK_METHODS
  if (unlikely(PyMethod_Check(__pyx_t_3))) {
    __pyx_t_2 = PyMethod_GET_SELF(__pyx_t_3);
    assert(__pyx_t_2);
    PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_3);
    __Pyx_INCREF(__pyx_t_2);
    __Pyx_INCREF(__pyx__function);
    __Pyx_DECREF_SET(__pyx_t_3, __pyx__function);
    __pyx_t_4 = 0;
  }
  #endif
  {
    PyObject *__pyx_callargs[2] = {__pyx_t_2, __pyx_v_params};
    __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+__pyx_t_4, (2-__pyx_t_4) | (__pyx_t_4*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6268, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
  }
  __pyx_v_query_string = __pyx_t_1;
  __pyx_t_1 = 0;

  /* "unicorn_binance_rest_api/manager.py":6269
 *         """
 *         query_string = urlencode(params)
 *         query_string = query_string.replace('%27', '%22')             # <<<<<<<<<<<<<<
 *         params['batchOrders'] = query_string[12:]
 *         return self._request_futures_api('post', 'batchOrders', True, data=params)
*/
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_query_string, __pyx_mstate_global->__pyx_n_u_replace); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6269, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[114], NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6269, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF_SET(__pyx_v_query_string, __pyx_t_3);
  __pyx_t_3 = 0;

  /* "unicorn_binance_rest_api/manager.py":6270
 *         query_string = urlencode(params)
 *         query_string = query_string.replace('%27', '%22')
 *         params['batchOrders'] = query_string[12:]             # <<<<<<<<<<<<<<
 *         return self._request_futures_api('post', 'batchOrders', True, data=params)
 * 
*/
  __pyx_t_3 = __Pyx_PyObject_GetSlice(__pyx_v_query_string, 12, 0, NULL, NULL, &__pyx_mstate_global->__pyx_slice[2], 1, 0, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6270, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  if (unlikely((PyDict_SetItem(__pyx_v_params, __pyx_mstate_global->__pyx_n_u_batchOrders, __pyx_t_3) < 0))) __PYX_ERR(0, 6270, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;

  /* "unicorn_binance_rest_api/manager.py":6271
 *         query_string = query_string.replace('%27', '%22')
 *         params['batchOrders'] = query_string[12:]
 *         return self._request_futures_api('post', 'batchOrders', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_get_order(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_api); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6271, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6271, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_t_1, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6271, __pyx_L1_error)
  __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_mstate_global->__pyx_tuple[115], __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6271, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_r = __pyx_t_2;
  __pyx_t_2 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6262
 *         return self._request_futures_api('post', 'order', True, data=params)
 * 
 *     def futures_place_batch_order(self, **params):             # <<<<<<<<<<<<<<
 *         """Send in new orders.
 *         https://binance-docs.github.io/apidocs/delivery/en/#place-multiple-orders-trade
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_place_batch_order", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_query_string);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6273
 *         return self._request_futures_api('post', 'batchOrders', True, data=params)
 * 
 *     def futures_get_order(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Check an order's status.
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_373futures_get_order(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_372futures_get_order, "\n        Check an order's status.\n\n        https://binance-docs.github.io/apidocs/futures/en/#query-order-user_data\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_373futures_get_order = {"futures_get_order", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_373futures_get_order, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_372futures_get_order};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_373futures_get_order(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_get_order (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6273, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6273, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "futures_get_order", 1) < 0) __PYX_ERR(0, 6273, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_get_order", 1, 1, 1, i); __PYX_ERR(0, 6273, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6273, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_get_order", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6273, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_get_order", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_372futures_get_order(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_372futures_get_order(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_get_order", 0);

  /* "unicorn_binance_rest_api/manager.py":6280
 * 
 *         """
 *         return self._request_futures_api('get', 'order', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_get_open_orders(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6280, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6280, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6280, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[116], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6280, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6273
 *         return self._request_futures_api('post', 'batchOrders', True, data=params)
 * 
 *     def futures_get_order(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Check an order's status.
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_get_order", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6282
 *         return self._request_futures_api('get', 'order', True, data=params)
 * 
 *     def futures_get_open_orders(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get all open orders on a symbol.
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_375futures_get_open_orders(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_374futures_get_open_orders, "\n        Get all open orders on a symbol.\n\n        https://binance-docs.github.io/apidocs/futures/en/#current-open-orders-user_data\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_375futures_get_open_orders = {"futures_get_open_orders", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_375futures_get_open_orders, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_374futures_get_open_orders};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_375futures_get_open_orders(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_get_open_orders (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6282, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6282, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "futures_get_open_orders", 1) < 0) __PYX_ERR(0, 6282, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_get_open_orders", 1, 1, 1, i); __PYX_ERR(0, 6282, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6282, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_get_open_orders", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6282, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_get_open_orders", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_374futures_get_open_orders(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_374futures_get_open_orders(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_get_open_orders", 0);

  /* "unicorn_binance_rest_api/manager.py":6289
 * 
 *         """
 *         return self._request_futures_api('get', 'openOrders', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_get_all_orders(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6289, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6289, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6289, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[117], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6289, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6282
 *         return self._request_futures_api('get', 'order', True, data=params)
 * 
 *     def futures_get_open_orders(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get all open orders on a symbol.
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_get_open_orders", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6291
 *         return self._request_futures_api('get', 'openOrders', True, data=params)
 * 
 *     def futures_get_all_orders(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get all futures account orders; active, canceled, or filled.
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_377futures_get_all_orders(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_376futures_get_all_orders, "\n        Get all futures account orders; active, canceled, or filled.\n\n        https://binance-docs.github.io/apidocs/futures/en/#all-orders-user_data\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_377futures_get_all_orders = {"futures_get_all_orders", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_377futures_get_all_orders, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_376futures_get_all_orders};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_377futures_get_all_orders(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_get_all_orders (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6291, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6291, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "futures_get_all_orders", 1) < 0) __PYX_ERR(0, 6291, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_get_all_orders", 1, 1, 1, i); __PYX_ERR(0, 6291, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6291, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_get_all_orders", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6291, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_get_all_orders", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_376futures_get_all_orders(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_376futures_get_all_orders(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_get_all_orders", 0);

  /* "unicorn_binance_rest_api/manager.py":6298
 * 
 *         """
 *         return self._request_futures_api('get', 'allOrders', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_cancel_order(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6298, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6298, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6298, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[118], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6298, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6291
 *         return self._request_futures_api('get', 'openOrders', True, data=params)
 * 
 *     def futures_get_all_orders(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get all futures account orders; active, canceled, or filled.
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_get_all_orders", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6300
 *         return self._request_futures_api('get', 'allOrders', True, data=params)
 * 
 *     def futures_cancel_order(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Cancel an active futures order.
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_379futures_cancel_order(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_378futures_cancel_order, "\n        Cancel an active futures order.\n\n        https://binance-docs.github.io/apidocs/futures/en/#cancel-order-trade\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_379futures_cancel_order = {"futures_cancel_order", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_379futures_cancel_order, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_378futures_cancel_order};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_379futures_cancel_order(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_cancel_order (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6300, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6300, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "futures_cancel_order", 1) < 0) __PYX_ERR(0, 6300, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_cancel_order", 1, 1, 1, i); __PYX_ERR(0, 6300, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6300, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_cancel_order", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6300, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_cancel_order", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_378futures_cancel_order(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_378futures_cancel_order(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_cancel_order", 0);

  /* "unicorn_binance_rest_api/manager.py":6307
 * 
 *         """
 *         return self._request_futures_api('delete', 'order', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_cancel_all_open_orders(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6307, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6307, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6307, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[119], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6307, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6300
 *         return self._request_futures_api('get', 'allOrders', True, data=params)
 * 
 *     def futures_cancel_order(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Cancel an active futures order.
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_cancel_order", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6309
 *         return self._request_futures_api('delete', 'order', True, data=params)
 * 
 *     def futures_cancel_all_open_orders(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Cancel all open futures orders
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_381futures_cancel_all_open_orders(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_380futures_cancel_all_open_orders, "\n        Cancel all open futures orders\n\n        https://binance-docs.github.io/apidocs/futures/en/#cancel-all-open-orders-trade\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_381futures_cancel_all_open_orders = {"futures_cancel_all_open_orders", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_381futures_cancel_all_open_orders, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_380futures_cancel_all_open_orders};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_381futures_cancel_all_open_orders(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_cancel_all_open_orders (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6309, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6309, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "futures_cancel_all_open_orders", 1) < 0) __PYX_ERR(0, 6309, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_cancel_all_open_orders", 1, 1, 1, i); __PYX_ERR(0, 6309, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6309, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_cancel_all_open_orders", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6309, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_cancel_all_open_orders", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_380futures_cancel_all_open_orders(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_380futures_cancel_all_open_orders(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_cancel_all_open_orders", 0);

  /* "unicorn_binance_rest_api/manager.py":6316
 * 
 *         """
 *         return self._request_futures_api('delete', 'allOpenOrders', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_cancel_orders(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6316, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6316, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6316, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[120], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6316, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6309
 *         return self._request_futures_api('delete', 'order', True, data=params)
 * 
 *     def futures_cancel_all_open_orders(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Cancel all open futures orders
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_cancel_all_open_orders", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6318
 *         return self._request_futures_api('delete', 'allOpenOrders', True, data=params)
 * 
 *     def futures_cancel_orders(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Cancel multiple futures orders
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_383futures_cancel_orders(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_382futures_cancel_orders, "\n        Cancel multiple futures orders\n\n        https://binance-docs.github.io/apidocs/futures/en/#cancel-multiple-orders-trade\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_383futures_cancel_orders = {"futures_cancel_orders", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_383futures_cancel_orders, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_382futures_cancel_orders};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_383futures_cancel_orders(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_cancel_orders (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6318, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6318, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "futures_cancel_orders", 1) < 0) __PYX_ERR(0, 6318, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_cancel_orders", 1, 1, 1, i); __PYX_ERR(0, 6318, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6318, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_cancel_orders", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6318, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_cancel_orders", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_382futures_cancel_orders(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_382futures_cancel_orders(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_cancel_orders", 0);

  /* "unicorn_binance_rest_api/manager.py":6325
 * 
 *         """
 *         return self._request_futures_api('delete', 'batchOrders', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_account_balance(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6325, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6325, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6325, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[121], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6325, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6318
 *         return self._request_futures_api('delete', 'allOpenOrders', True, data=params)
 * 
 *     def futures_cancel_orders(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Cancel multiple futures orders
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_cancel_orders", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6327
 *         return self._request_futures_api('delete', 'batchOrders', True, data=params)
 * 
 *     def futures_account_balance(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get futures account balance
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_385futures_account_balance(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_384futures_account_balance, "\n        Get futures account balance\n\n        https://binance-docs.github.io/apidocs/futures/en/#future-account-balance-user_data\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_385futures_account_balance = {"futures_account_balance", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_385futures_account_balance, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_384futures_account_balance};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_385futures_account_balance(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_account_balance (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6327, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6327, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "futures_account_balance", 1) < 0) __PYX_ERR(0, 6327, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_account_balance", 1, 1, 1, i); __PYX_ERR(0, 6327, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6327, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_account_balance", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6327, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_account_balance", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_384futures_account_balance(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_384futures_account_balance(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_account_balance", 0);

  /* "unicorn_binance_rest_api/manager.py":6334
 * 
 *         """
 *         return self._request_futures_api('get', 'balance', True, version=2, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_account(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6334, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6334, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_version_2, __pyx_mstate_global->__pyx_int_2) < 0) __PYX_ERR(0, 6334, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6334, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[122], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6334, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6327
 *         return self._request_futures_api('delete', 'batchOrders', True, data=params)
 * 
 *     def futures_account_balance(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get futures account balance
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_account_balance", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6336
 *         return self._request_futures_api('get', 'balance', True, version=2, data=params)
 * 
 *     def futures_account(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get current account information.
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_387futures_account(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_386futures_account, "\n        Get current account information.\n\n        https://binance-docs.github.io/apidocs/futures/en/#account-information-user_data\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_387futures_account = {"futures_account", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_387futures_account, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_386futures_account};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_387futures_account(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_account (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6336, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6336, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "futures_account", 1) < 0) __PYX_ERR(0, 6336, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_account", 1, 1, 1, i); __PYX_ERR(0, 6336, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6336, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_account", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6336, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_account", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_386futures_account(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_386futures_account(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_account", 0);

  /* "unicorn_binance_rest_api/manager.py":6343
 * 
 *         """
 *         return self._request_futures_api('get', 'account', True, version=2, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_change_leverage(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6343, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6343, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_version_2, __pyx_mstate_global->__pyx_int_2) < 0) __PYX_ERR(0, 6343, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6343, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[123], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6343, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6336
 *         return self._request_futures_api('get', 'balance', True, version=2, data=params)
 * 
 *     def futures_account(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get current account information.
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_account", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6345
 *         return self._request_futures_api('get', 'account', True, version=2, data=params)
 * 
 *     def futures_change_leverage(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Change user's initial leverage of specific symbol market
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_389futures_change_leverage(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_388futures_change_leverage, "\n        Change user's initial leverage of specific symbol market\n\n        https://binance-docs.github.io/apidocs/futures/en/#change-initial-leverage-trade\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_389futures_change_leverage = {"futures_change_leverage", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_389futures_change_leverage, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_388futures_change_leverage};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_389futures_change_leverage(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_change_leverage (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6345, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6345, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "futures_change_leverage", 1) < 0) __PYX_ERR(0, 6345, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_change_leverage", 1, 1, 1, i); __PYX_ERR(0, 6345, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6345, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_change_leverage", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6345, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_change_leverage", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_388futures_change_leverage(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_388futures_change_leverage(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_change_leverage", 0);

  /* "unicorn_binance_rest_api/manager.py":6352
 * 
 *         """
 *         return self._request_futures_api('post', 'leverage', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_change_margin_type(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6352, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6352, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6352, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[124], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6352, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6345
 *         return self._request_futures_api('get', 'account', True, version=2, data=params)
 * 
 *     def futures_change_leverage(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Change user's initial leverage of specific symbol market
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_change_leverage", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6354
 *         return self._request_futures_api('post', 'leverage', True, data=params)
 * 
 *     def futures_change_margin_type(self, **params):             # <<<<<<<<<<<<<<
 *         """Change the margin type for a symbol
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_391futures_change_margin_type(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_390futures_change_margin_type, "Change the margin type for a symbol\n\n        https://binance-docs.github.io/apidocs/futures/en/#change-margin-type-trade\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_391futures_change_margin_type = {"futures_change_margin_type", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_391futures_change_margin_type, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_390futures_change_margin_type};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_391futures_change_margin_type(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_change_margin_type (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6354, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6354, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "futures_change_margin_type", 1) < 0) __PYX_ERR(0, 6354, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_change_margin_type", 1, 1, 1, i); __PYX_ERR(0, 6354, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6354, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_change_margin_type", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6354, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_change_margin_type", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_390futures_change_margin_type(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_390futures_change_margin_type(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_change_margin_type", 0);

  /* "unicorn_binance_rest_api/manager.py":6360
 * 
 *         """
 *         return self._request_futures_api('post', 'marginType', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_change_position_margin(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6360, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6360, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6360, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[125], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6360, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6354
 *         return self._request_futures_api('post', 'leverage', True, data=params)
 * 
 *     def futures_change_margin_type(self, **params):             # <<<<<<<<<<<<<<
 *         """Change the margin type for a symbol
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_change_margin_type", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6362
 *         return self._request_futures_api('post', 'marginType', True, data=params)
 * 
 *     def futures_change_position_margin(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Change the position margin for a symbol
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_393futures_change_position_margin(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_392futures_change_position_margin, "\n        Change the position margin for a symbol\n\n        https://binance-docs.github.io/apidocs/futures/en/#modify-isolated-position-margin-trade\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_393futures_change_position_margin = {"futures_change_position_margin", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_393futures_change_position_margin, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_392futures_change_position_margin};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_393futures_change_position_margin(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_change_position_margin (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6362, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6362, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "futures_change_position_margin", 1) < 0) __PYX_ERR(0, 6362, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_change_position_margin", 1, 1, 1, i); __PYX_ERR(0, 6362, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6362, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_change_position_margin", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6362, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_change_position_margin", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_392futures_change_position_margin(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_392futures_change_position_margin(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_change_position_margin", 0);

  /* "unicorn_binance_rest_api/manager.py":6369
 * 
 *         """
 *         return self._request_futures_api('post', 'positionMargin', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_position_margin_history(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6369, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6369, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6369, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[126], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6369, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6362
 *         return self._request_futures_api('post', 'marginType', True, data=params)
 * 
 *     def futures_change_position_margin(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Change the position margin for a symbol
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_change_position_margin", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6371
 *         return self._request_futures_api('post', 'positionMargin', True, data=params)
 * 
 *     def futures_position_margin_history(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get position margin change history
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_395futures_position_margin_history(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_394futures_position_margin_history, "\n        Get position margin change history\n\n        https://binance-docs.github.io/apidocs/futures/en/#get-postion-margin-change-history-trade\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_395futures_position_margin_history = {"futures_position_margin_history", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_395futures_position_margin_history, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_394futures_position_margin_history};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_395futures_position_margin_history(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_position_margin_history (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6371, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6371, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "futures_position_margin_history", 1) < 0) __PYX_ERR(0, 6371, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_position_margin_history", 1, 1, 1, i); __PYX_ERR(0, 6371, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6371, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_position_margin_history", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6371, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_position_margin_history", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_394futures_position_margin_history(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_394futures_position_margin_history(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_position_margin_history", 0);

  /* "unicorn_binance_rest_api/manager.py":6378
 * 
 *         """
 *         return self._request_futures_api('get', 'positionMargin/history', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_position_information(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6378, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6378, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6378, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[127], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6378, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6371
 *         return self._request_futures_api('post', 'positionMargin', True, data=params)
 * 
 *     def futures_position_margin_history(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get position margin change history
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_position_margin_history", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6380
 *         return self._request_futures_api('get', 'positionMargin/history', True, data=params)
 * 
 *     def futures_position_information(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get position information
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_397futures_position_information(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_396futures_position_information, "\n        Get position information\n\n        https://binance-docs.github.io/apidocs/futures/en/#position-information-user_data\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_397futures_position_information = {"futures_position_information", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_397futures_position_information, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_396futures_position_information};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_397futures_position_information(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_position_information (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6380, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6380, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "futures_position_information", 1) < 0) __PYX_ERR(0, 6380, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_position_information", 1, 1, 1, i); __PYX_ERR(0, 6380, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6380, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_position_information", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6380, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_position_information", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_396futures_position_information(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_396futures_position_information(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_position_information", 0);

  /* "unicorn_binance_rest_api/manager.py":6387
 * 
 *         """
 *         return self._request_futures_api('get', 'positionRisk', True, version=2, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_account_trades(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6387, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6387, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_version_2, __pyx_mstate_global->__pyx_int_2) < 0) __PYX_ERR(0, 6387, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6387, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[128], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6387, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6380
 *         return self._request_futures_api('get', 'positionMargin/history', True, data=params)
 * 
 *     def futures_position_information(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get position information
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_position_information", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6389
 *         return self._request_futures_api('get', 'positionRisk', True, version=2, data=params)
 * 
 *     def futures_account_trades(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get trades for the authenticated account and symbol.
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_399futures_account_trades(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_398futures_account_trades, "\n        Get trades for the authenticated account and symbol.\n\n        https://binance-docs.github.io/apidocs/futures/en/#account-trade-list-user_data\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_399futures_account_trades = {"futures_account_trades", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_399futures_account_trades, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_398futures_account_trades};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_399futures_account_trades(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_account_trades (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6389, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6389, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "futures_account_trades", 1) < 0) __PYX_ERR(0, 6389, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_account_trades", 1, 1, 1, i); __PYX_ERR(0, 6389, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6389, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_account_trades", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6389, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_account_trades", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_398futures_account_trades(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_398futures_account_trades(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_account_trades", 0);

  /* "unicorn_binance_rest_api/manager.py":6396
 * 
 *         """
 *         return self._request_futures_api('get', 'userTrades', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_income_history(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6396, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6396, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6396, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[129], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6396, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6389
 *         return self._request_futures_api('get', 'positionRisk', True, version=2, data=params)
 * 
 *     def futures_account_trades(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get trades for the authenticated account and symbol.
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_account_trades", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6398
 *         return self._request_futures_api('get', 'userTrades', True, data=params)
 * 
 *     def futures_income_history(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get income history for authenticated account
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_401futures_income_history(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_400futures_income_history, "\n        Get income history for authenticated account\n\n        https://binance-docs.github.io/apidocs/futures/en/#get-income-history-user_data\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_401futures_income_history = {"futures_income_history", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_401futures_income_history, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_400futures_income_history};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_401futures_income_history(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_income_history (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6398, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6398, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "futures_income_history", 1) < 0) __PYX_ERR(0, 6398, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_income_history", 1, 1, 1, i); __PYX_ERR(0, 6398, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6398, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_income_history", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6398, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_income_history", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_400futures_income_history(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_400futures_income_history(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_income_history", 0);

  /* "unicorn_binance_rest_api/manager.py":6405
 * 
 *         """
 *         return self._request_futures_api('get', 'income', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_change_position_mode(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6405, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6405, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6405, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[130], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6405, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6398
 *         return self._request_futures_api('get', 'userTrades', True, data=params)
 * 
 *     def futures_income_history(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get income history for authenticated account
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_income_history", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6407
 *         return self._request_futures_api('get', 'income', True, data=params)
 * 
 *     def futures_change_position_mode(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Change position mode for authenticated account
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_403futures_change_position_mode(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_402futures_change_position_mode, "\n        Change position mode for authenticated account\n\n        https://binance-docs.github.io/apidocs/futures/en/#change-position-mode-trade\n        \n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_403futures_change_position_mode = {"futures_change_position_mode", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_403futures_change_position_mode, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_402futures_change_position_mode};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_403futures_change_position_mode(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_change_position_mode (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6407, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6407, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "futures_change_position_mode", 1) < 0) __PYX_ERR(0, 6407, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_change_position_mode", 1, 1, 1, i); __PYX_ERR(0, 6407, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6407, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_change_position_mode", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6407, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_change_position_mode", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_402futures_change_position_mode(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_402futures_change_position_mode(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_change_position_mode", 0);

  /* "unicorn_binance_rest_api/manager.py":6414
 * 
 *         """
 *         return self._request_futures_api('post', 'positionSide/dual', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_get_position_mode(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6414, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6414, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6414, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[131], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6414, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6407
 *         return self._request_futures_api('get', 'income', True, data=params)
 * 
 *     def futures_change_position_mode(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Change position mode for authenticated account
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_change_position_mode", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6416
 *         return self._request_futures_api('post', 'positionSide/dual', True, data=params)
 * 
 *     def futures_get_position_mode(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get position mode for authenticated account
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_405futures_get_position_mode(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_404futures_get_position_mode, "\n        Get position mode for authenticated account\n\n        https://binance-docs.github.io/apidocs/futures/en/#get-current-position-mode-user_data\n        \n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_405futures_get_position_mode = {"futures_get_position_mode", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_405futures_get_position_mode, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_404futures_get_position_mode};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_405futures_get_position_mode(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_get_position_mode (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6416, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6416, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "futures_get_position_mode", 1) < 0) __PYX_ERR(0, 6416, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_get_position_mode", 1, 1, 1, i); __PYX_ERR(0, 6416, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6416, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_get_position_mode", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6416, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_get_position_mode", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_404futures_get_position_mode(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_404futures_get_position_mode(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_get_position_mode", 0);

  /* "unicorn_binance_rest_api/manager.py":6423
 * 
 *         """
 *         return self._request_futures_api('get', 'positionSide/dual', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_stream_get_listen_key(self, output="value", throw_exception=True, **kwargs):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6423, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6423, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6423, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[132], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6423, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6416
 *         return self._request_futures_api('post', 'positionSide/dual', True, data=params)
 * 
 *     def futures_get_position_mode(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get position mode for authenticated account
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_get_position_mode", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6425
 *         return self._request_futures_api('get', 'positionSide/dual', True, data=params)
 * 
 *     def futures_stream_get_listen_key(self, output="value", throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         """Start a new futures data stream and return the listen key
 *         If a stream already exists it should return the same key.
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_407futures_stream_get_listen_key(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_406futures_stream_get_listen_key, "Start a new futures data stream and return the listen key\n        If a stream already exists it should return the same key.\n        If the stream becomes invalid a new key is returned.\n\n        Can be used to keep the stream alive.\n\n        https://binance-docs.github.io/apidocs/spot/en/#listen-key-margin\n\n        :param output: Set `output` to \"raw_data\" to receive the request resource, default is \"value\" which returns\n                        the plain listenKey.\n        :type output: str\n        :param throw_exception: Default `True`, if `False` the raw response will be returned.\n        :type throw_exception: bool\n        :returns: API response\n\n        .. code-block:: python\n\n            {\n                \"listenKey\": \"pqia91ma19a5s61cv6a81va65sdf19v8a65a1a5s61cv6a81va65sdf19v8a65a1\"\n            }\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_407futures_stream_get_listen_key = {"futures_stream_get_listen_key", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_407futures_stream_get_listen_key, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_406futures_stream_get_listen_key};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_407futures_stream_get_listen_key(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_output = 0;
  PyObject *__pyx_v_throw_exception = 0;
  PyObject *__pyx_v_kwargs = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[3] = {0,0,0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_stream_get_listen_key (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_kwargs = PyDict_New(); if (unlikely(!__pyx_v_kwargs)) return NULL;
  __Pyx_GOTREF(__pyx_v_kwargs);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,&__pyx_mstate_global->__pyx_n_u_output,&__pyx_mstate_global->__pyx_n_u_throw_exception,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6425, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  3:
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 6425, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 6425, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6425, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_kwargs, values, kwd_pos_args, __pyx_kwds_len, "futures_stream_get_listen_key", 1) < 0) __PYX_ERR(0, 6425, __pyx_L3_error)
      if (!values[1]) values[1] = __Pyx_NewRef(((PyObject *)((PyObject*)__pyx_mstate_global->__pyx_n_u_value)));
      if (!values[2]) values[2] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_True)));
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_stream_get_listen_key", 0, 1, 3, i); __PYX_ERR(0, 6425, __pyx_L3_error) }
      }
    } else {
      switch (__pyx_nargs) {
        case  3:
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 6425, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 6425, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6425, __pyx_L3_error)
        break;
        default: goto __pyx_L5_argtuple_error;
      }
      if (!values[1]) values[1] = __Pyx_NewRef(((PyObject *)((PyObject*)__pyx_mstate_global->__pyx_n_u_value)));
      if (!values[2]) values[2] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_True)));
    }
    __pyx_v_self = values[0];
    __pyx_v_output = values[1];
    __pyx_v_throw_exception = values[2];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_stream_get_listen_key", 0, 1, 3, __pyx_nargs); __PYX_ERR(0, 6425, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_kwargs); __pyx_v_kwargs = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_stream_get_listen_key", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_406futures_stream_get_listen_key(__pyx_self, __pyx_v_self, __pyx_v_output, __pyx_v_throw_exception, __pyx_v_kwargs);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_kwargs);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_406futures_stream_get_listen_key(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_output, PyObject *__pyx_v_throw_exception, PyObject *__pyx_v_kwargs) {
  PyObject *__pyx_v_res = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  PyObject *__pyx_t_4 = NULL;
  int __pyx_t_5;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_stream_get_listen_key", 0);

  /* "unicorn_binance_rest_api/manager.py":6450
 * 
 *         """
 *         res = self._request_futures_api('post', 'listenKey', signed=False, data={},             # <<<<<<<<<<<<<<
 *                                         throw_exception=throw_exception, **kwargs)
 *         if output == "value":
*/
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6450, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_3 = __Pyx_PyDict_NewPresized(3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6450, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  if (PyDict_SetItem(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_signed, Py_False) < 0) __PYX_ERR(0, 6450, __pyx_L1_error)
  __pyx_t_4 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 6450, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (PyDict_SetItem(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_data, __pyx_t_4) < 0) __PYX_ERR(0, 6450, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":6451
 *         """
 *         res = self._request_futures_api('post', 'listenKey', signed=False, data={},
 *                                         throw_exception=throw_exception, **kwargs)             # <<<<<<<<<<<<<<
 *         if output == "value":
 *             return res['listenKey']
*/
  if (PyDict_SetItem(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_throw_exception, __pyx_v_throw_exception) < 0) __PYX_ERR(0, 6450, __pyx_L1_error)
  __pyx_t_2 = __pyx_t_3;
  __pyx_t_3 = 0;
  if (__Pyx_MergeKeywords(__pyx_t_2, __pyx_v_kwargs) < 0) __PYX_ERR(0, 6451, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":6450
 * 
 *         """
 *         res = self._request_futures_api('post', 'listenKey', signed=False, data={},             # <<<<<<<<<<<<<<
 *                                         throw_exception=throw_exception, **kwargs)
 *         if output == "value":
*/
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[133], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6450, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_v_res = __pyx_t_3;
  __pyx_t_3 = 0;

  /* "unicorn_binance_rest_api/manager.py":6452
 *         res = self._request_futures_api('post', 'listenKey', signed=False, data={},
 *                                         throw_exception=throw_exception, **kwargs)
 *         if output == "value":             # <<<<<<<<<<<<<<
 *             return res['listenKey']
 *         elif output == "raw_data":
*/
  __pyx_t_5 = (__Pyx_PyUnicode_Equals(__pyx_v_output, __pyx_mstate_global->__pyx_n_u_value, Py_EQ)); if (unlikely((__pyx_t_5 < 0))) __PYX_ERR(0, 6452, __pyx_L1_error)
  if (__pyx_t_5) {

    /* "unicorn_binance_rest_api/manager.py":6453
 *                                         throw_exception=throw_exception, **kwargs)
 *         if output == "value":
 *             return res['listenKey']             # <<<<<<<<<<<<<<
 *         elif output == "raw_data":
 *             return res
*/
    __Pyx_XDECREF(__pyx_r);
    __pyx_t_3 = __Pyx_PyObject_Dict_GetItem(__pyx_v_res, __pyx_mstate_global->__pyx_n_u_listenKey); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6453, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_r = __pyx_t_3;
    __pyx_t_3 = 0;
    goto __pyx_L0;

    /* "unicorn_binance_rest_api/manager.py":6452
 *         res = self._request_futures_api('post', 'listenKey', signed=False, data={},
 *                                         throw_exception=throw_exception, **kwargs)
 *         if output == "value":             # <<<<<<<<<<<<<<
 *             return res['listenKey']
 *         elif output == "raw_data":
*/
  }

  /* "unicorn_binance_rest_api/manager.py":6454
 *         if output == "value":
 *             return res['listenKey']
 *         elif output == "raw_data":             # <<<<<<<<<<<<<<
 *             return res
 *         else:
*/
  __pyx_t_5 = (__Pyx_PyUnicode_Equals(__pyx_v_output, __pyx_mstate_global->__pyx_n_u_raw_data, Py_EQ)); if (unlikely((__pyx_t_5 < 0))) __PYX_ERR(0, 6454, __pyx_L1_error)
  if (__pyx_t_5) {

    /* "unicorn_binance_rest_api/manager.py":6455
 *             return res['listenKey']
 *         elif output == "raw_data":
 *             return res             # <<<<<<<<<<<<<<
 *         else:
 *             return res['listenKey']
*/
    __Pyx_XDECREF(__pyx_r);
    __Pyx_INCREF(__pyx_v_res);
    __pyx_r = __pyx_v_res;
    goto __pyx_L0;

    /* "unicorn_binance_rest_api/manager.py":6454
 *         if output == "value":
 *             return res['listenKey']
 *         elif output == "raw_data":             # <<<<<<<<<<<<<<
 *             return res
 *         else:
*/
  }

  /* "unicorn_binance_rest_api/manager.py":6457
 *             return res
 *         else:
 *             return res['listenKey']             # <<<<<<<<<<<<<<
 * 
 *     def futures_stream_keepalive(self, listenKey, throw_exception=True, **kwargs):
*/
  /*else*/ {
    __Pyx_XDECREF(__pyx_r);
    __pyx_t_3 = __Pyx_PyObject_Dict_GetItem(__pyx_v_res, __pyx_mstate_global->__pyx_n_u_listenKey); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6457, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_r = __pyx_t_3;
    __pyx_t_3 = 0;
    goto __pyx_L0;
  }

  /* "unicorn_binance_rest_api/manager.py":6425
 *         return self._request_futures_api('get', 'positionSide/dual', True, data=params)
 * 
 *     def futures_stream_get_listen_key(self, output="value", throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         """Start a new futures data stream and return the listen key
 *         If a stream already exists it should return the same key.
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_stream_get_listen_key", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_res);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6459
 *             return res['listenKey']
 * 
 *     def futures_stream_keepalive(self, listenKey, throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         """PING a futures data stream to prevent a timeout.
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_409futures_stream_keepalive(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_408futures_stream_keepalive, "PING a futures data stream to prevent a timeout.\n\n        https://binance-docs.github.io/apidocs/spot/en/#listen-key-margin\n\n        :param listenKey: required\n        :type listenKey: str\n        :param throw_exception: Default `True`, if `False` the raw response will be returned.\n        :type throw_exception: bool\n\n        :returns: API response\n\n        .. code-block:: python\n\n            {}\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_409futures_stream_keepalive = {"futures_stream_keepalive", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_409futures_stream_keepalive, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_408futures_stream_keepalive};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_409futures_stream_keepalive(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_listenKey = 0;
  PyObject *__pyx_v_throw_exception = 0;
  PyObject *__pyx_v_kwargs = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[3] = {0,0,0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_stream_keepalive (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_kwargs = PyDict_New(); if (unlikely(!__pyx_v_kwargs)) return NULL;
  __Pyx_GOTREF(__pyx_v_kwargs);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,&__pyx_mstate_global->__pyx_n_u_listenKey,&__pyx_mstate_global->__pyx_n_u_throw_exception,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6459, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  3:
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 6459, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 6459, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6459, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_kwargs, values, kwd_pos_args, __pyx_kwds_len, "futures_stream_keepalive", 1) < 0) __PYX_ERR(0, 6459, __pyx_L3_error)
      if (!values[2]) values[2] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_True)));
      for (Py_ssize_t i = __pyx_nargs; i < 2; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_stream_keepalive", 0, 2, 3, i); __PYX_ERR(0, 6459, __pyx_L3_error) }
      }
    } else {
      switch (__pyx_nargs) {
        case  3:
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 6459, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 6459, __pyx_L3_error)
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6459, __pyx_L3_error)
        break;
        default: goto __pyx_L5_argtuple_error;
      }
      if (!values[2]) values[2] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_True)));
    }
    __pyx_v_self = values[0];
    __pyx_v_listenKey = values[1];
    __pyx_v_throw_exception = values[2];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_stream_keepalive", 0, 2, 3, __pyx_nargs); __PYX_ERR(0, 6459, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_kwargs); __pyx_v_kwargs = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_stream_keepalive", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_408futures_stream_keepalive(__pyx_self, __pyx_v_self, __pyx_v_listenKey, __pyx_v_throw_exception, __pyx_v_kwargs);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_kwargs);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_408futures_stream_keepalive(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_listenKey, PyObject *__pyx_v_throw_exception, PyObject *__pyx_v_kwargs) {
  PyObject *__pyx_v_params = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_stream_keepalive", 0);

  /* "unicorn_binance_rest_api/manager.py":6479
 *         """
 *         params = {
 *             'listenKey': listenKey             # <<<<<<<<<<<<<<
 *         }
 *         return self._request_futures_api('put', 'listenKey', signed=False, data=params,
*/
  __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6479, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_t_1, __pyx_mstate_global->__pyx_n_u_listenKey, __pyx_v_listenKey) < 0) __PYX_ERR(0, 6479, __pyx_L1_error)
  __pyx_v_params = ((PyObject*)__pyx_t_1);
  __pyx_t_1 = 0;

  /* "unicorn_binance_rest_api/manager.py":6481
 *             'listenKey': listenKey
 *         }
 *         return self._request_futures_api('put', 'listenKey', signed=False, data=params,             # <<<<<<<<<<<<<<
 *                                          throw_exception=throw_exception, **kwargs)
 * 
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6481, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_3 = __Pyx_PyDict_NewPresized(3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6481, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  if (PyDict_SetItem(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_signed, Py_False) < 0) __PYX_ERR(0, 6481, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6481, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":6482
 *         }
 *         return self._request_futures_api('put', 'listenKey', signed=False, data=params,
 *                                          throw_exception=throw_exception, **kwargs)             # <<<<<<<<<<<<<<
 * 
 *     def futures_stream_close(self, listenKey, throw_exception=True, **kwargs):
*/
  if (PyDict_SetItem(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_throw_exception, __pyx_v_throw_exception) < 0) __PYX_ERR(0, 6481, __pyx_L1_error)
  __pyx_t_2 = __pyx_t_3;
  __pyx_t_3 = 0;
  if (__Pyx_MergeKeywords(__pyx_t_2, __pyx_v_kwargs) < 0) __PYX_ERR(0, 6482, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":6481
 *             'listenKey': listenKey
 *         }
 *         return self._request_futures_api('put', 'listenKey', signed=False, data=params,             # <<<<<<<<<<<<<<
 *                                          throw_exception=throw_exception, **kwargs)
 * 
*/
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[134], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6481, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6459
 *             return res['listenKey']
 * 
 *     def futures_stream_keepalive(self, listenKey, throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         """PING a futures data stream to prevent a timeout.
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_stream_keepalive", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_params);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6484
 *                                          throw_exception=throw_exception, **kwargs)
 * 
 *     def futures_stream_close(self, listenKey, throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         """Close out a futures data stream.
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_411futures_stream_close(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_410futures_stream_close, "Close out a futures data stream.\n\n        https://binance-docs.github.io/apidocs/spot/en/#listen-key-margin\n\n        :param listenKey: required\n        :type listenKey: str\n        :param throw_exception: Default `True`, if `False` the raw response will be returned.\n        :type throw_exception: bool\n\n        :returns: API response\n\n        .. code-block:: python\n\n            {}\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_411futures_stream_close = {"futures_stream_close", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_411futures_stream_close, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_410futures_stream_close};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_411futures_stream_close(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_listenKey = 0;
  PyObject *__pyx_v_throw_exception = 0;
  PyObject *__pyx_v_kwargs = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[3] = {0,0,0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_stream_close (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_kwargs = PyDict_New(); if (unlikely(!__pyx_v_kwargs)) return NULL;
  __Pyx_GOTREF(__pyx_v_kwargs);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,&__pyx_mstate_global->__pyx_n_u_listenKey,&__pyx_mstate_global->__pyx_n_u_throw_exception,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6484, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  3:
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 6484, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 6484, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6484, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_kwargs, values, kwd_pos_args, __pyx_kwds_len, "futures_stream_close", 1) < 0) __PYX_ERR(0, 6484, __pyx_L3_error)
      if (!values[2]) values[2] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_True)));
      for (Py_ssize_t i = __pyx_nargs; i < 2; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_stream_close", 0, 2, 3, i); __PYX_ERR(0, 6484, __pyx_L3_error) }
      }
    } else {
      switch (__pyx_nargs) {
        case  3:
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 6484, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 6484, __pyx_L3_error)
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6484, __pyx_L3_error)
        break;
        default: goto __pyx_L5_argtuple_error;
      }
      if (!values[2]) values[2] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_True)));
    }
    __pyx_v_self = values[0];
    __pyx_v_listenKey = values[1];
    __pyx_v_throw_exception = values[2];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_stream_close", 0, 2, 3, __pyx_nargs); __PYX_ERR(0, 6484, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_kwargs); __pyx_v_kwargs = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_stream_close", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_410futures_stream_close(__pyx_self, __pyx_v_self, __pyx_v_listenKey, __pyx_v_throw_exception, __pyx_v_kwargs);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_kwargs);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_410futures_stream_close(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_listenKey, PyObject *__pyx_v_throw_exception, PyObject *__pyx_v_kwargs) {
  PyObject *__pyx_v_params = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_stream_close", 0);

  /* "unicorn_binance_rest_api/manager.py":6504
 *         """
 *         params = {
 *             'listenKey': listenKey             # <<<<<<<<<<<<<<
 *         }
 *         return self._request_futures_api('delete', 'listenKey', signed=False, data=params,
*/
  __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6504, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_t_1, __pyx_mstate_global->__pyx_n_u_listenKey, __pyx_v_listenKey) < 0) __PYX_ERR(0, 6504, __pyx_L1_error)
  __pyx_v_params = ((PyObject*)__pyx_t_1);
  __pyx_t_1 = 0;

  /* "unicorn_binance_rest_api/manager.py":6506
 *             'listenKey': listenKey
 *         }
 *         return self._request_futures_api('delete', 'listenKey', signed=False, data=params,             # <<<<<<<<<<<<<<
 *                                          throw_exception=throw_exception, **kwargs)
 * 
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6506, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_3 = __Pyx_PyDict_NewPresized(3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6506, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  if (PyDict_SetItem(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_signed, Py_False) < 0) __PYX_ERR(0, 6506, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6506, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":6507
 *         }
 *         return self._request_futures_api('delete', 'listenKey', signed=False, data=params,
 *                                          throw_exception=throw_exception, **kwargs)             # <<<<<<<<<<<<<<
 * 
 *     # COIN Futures API
*/
  if (PyDict_SetItem(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_throw_exception, __pyx_v_throw_exception) < 0) __PYX_ERR(0, 6506, __pyx_L1_error)
  __pyx_t_2 = __pyx_t_3;
  __pyx_t_3 = 0;
  if (__Pyx_MergeKeywords(__pyx_t_2, __pyx_v_kwargs) < 0) __PYX_ERR(0, 6507, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":6506
 *             'listenKey': listenKey
 *         }
 *         return self._request_futures_api('delete', 'listenKey', signed=False, data=params,             # <<<<<<<<<<<<<<
 *                                          throw_exception=throw_exception, **kwargs)
 * 
*/
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[135], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6506, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6484
 *                                          throw_exception=throw_exception, **kwargs)
 * 
 *     def futures_stream_close(self, listenKey, throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         """Close out a futures data stream.
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_stream_close", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_params);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6510
 * 
 *     # COIN Futures API
 *     def futures_coin_ping(self):             # <<<<<<<<<<<<<<
 *         """
 *         Test connectivity to the Rest API
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_413futures_coin_ping(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_412futures_coin_ping, "\n        Test connectivity to the Rest API\n\n        https://binance-docs.github.io/apidocs/delivery/en/#test-connectivity\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_413futures_coin_ping = {"futures_coin_ping", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_413futures_coin_ping, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_412futures_coin_ping};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_413futures_coin_ping(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_coin_ping (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6510, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6510, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "futures_coin_ping", 0) < 0) __PYX_ERR(0, 6510, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_coin_ping", 1, 1, 1, i); __PYX_ERR(0, 6510, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6510, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_coin_ping", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6510, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_ping", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_412futures_coin_ping(__pyx_self, __pyx_v_self);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_412futures_coin_ping(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_coin_ping", 0);

  /* "unicorn_binance_rest_api/manager.py":6517
 * 
 *         """
 *         return self._request_futures_coin_api("get", "ping")             # <<<<<<<<<<<<<<
 * 
 *     def futures_coin_time(self):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_coin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6517, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[92], NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6517, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_r = __pyx_t_2;
  __pyx_t_2 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6510
 * 
 *     # COIN Futures API
 *     def futures_coin_ping(self):             # <<<<<<<<<<<<<<
 *         """
 *         Test connectivity to the Rest API
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_ping", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6519
 *         return self._request_futures_coin_api("get", "ping")
 * 
 *     def futures_coin_time(self):             # <<<<<<<<<<<<<<
 *         """
 *         Test connectivity to the Rest API and get the current server time.
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_415futures_coin_time(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_414futures_coin_time, "\n        Test connectivity to the Rest API and get the current server time.\n\n        https://binance-docs.github.io/apidocs/delivery/en/#check-server-time\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_415futures_coin_time = {"futures_coin_time", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_415futures_coin_time, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_414futures_coin_time};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_415futures_coin_time(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_coin_time (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6519, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6519, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "futures_coin_time", 0) < 0) __PYX_ERR(0, 6519, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_coin_time", 1, 1, 1, i); __PYX_ERR(0, 6519, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6519, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_coin_time", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6519, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_time", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_414futures_coin_time(__pyx_self, __pyx_v_self);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_414futures_coin_time(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_coin_time", 0);

  /* "unicorn_binance_rest_api/manager.py":6526
 * 
 *         """
 *         return self._request_futures_coin_api("get", "time")             # <<<<<<<<<<<<<<
 * 
 *     def futures_coin_exchange_info(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_coin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6526, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[93], NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6526, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_r = __pyx_t_2;
  __pyx_t_2 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6519
 *         return self._request_futures_coin_api("get", "ping")
 * 
 *     def futures_coin_time(self):             # <<<<<<<<<<<<<<
 *         """
 *         Test connectivity to the Rest API and get the current server time.
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_time", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6528
 *         return self._request_futures_coin_api("get", "time")
 * 
 *     def futures_coin_exchange_info(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Current exchange trading rules and symbol information
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_417futures_coin_exchange_info(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_416futures_coin_exchange_info, "\n        Current exchange trading rules and symbol information\n\n        https://binance-docs.github.io/apidocs/delivery/en/#exchange-information\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_417futures_coin_exchange_info = {"futures_coin_exchange_info", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_417futures_coin_exchange_info, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_416futures_coin_exchange_info};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_417futures_coin_exchange_info(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_coin_exchange_info (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6528, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6528, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "futures_coin_exchange_info", 1) < 0) __PYX_ERR(0, 6528, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_coin_exchange_info", 1, 1, 1, i); __PYX_ERR(0, 6528, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6528, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_coin_exchange_info", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6528, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_exchange_info", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_416futures_coin_exchange_info(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_416futures_coin_exchange_info(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_coin_exchange_info", 0);

  /* "unicorn_binance_rest_api/manager.py":6535
 * 
 *         """
 *         return self._request_futures_coin_api("get", "exchangeInfo", data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_coin_order_book(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_coin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6535, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6535, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6535, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[94], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6535, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6528
 *         return self._request_futures_coin_api("get", "time")
 * 
 *     def futures_coin_exchange_info(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Current exchange trading rules and symbol information
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_exchange_info", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6537
 *         return self._request_futures_coin_api("get", "exchangeInfo", data=params)
 * 
 *     def futures_coin_order_book(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get the Order Book for the market
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_419futures_coin_order_book(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_418futures_coin_order_book, "\n        Get the Order Book for the market\n\n        https://binance-docs.github.io/apidocs/delivery/en/#order-book\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_419futures_coin_order_book = {"futures_coin_order_book", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_419futures_coin_order_book, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_418futures_coin_order_book};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_419futures_coin_order_book(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_coin_order_book (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6537, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6537, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "futures_coin_order_book", 1) < 0) __PYX_ERR(0, 6537, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_coin_order_book", 1, 1, 1, i); __PYX_ERR(0, 6537, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6537, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_coin_order_book", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6537, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_order_book", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_418futures_coin_order_book(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_418futures_coin_order_book(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_coin_order_book", 0);

  /* "unicorn_binance_rest_api/manager.py":6544
 * 
 *         """
 *         return self._request_futures_coin_api("get", "depth", data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_coin_recent_trades(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_coin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6544, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6544, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6544, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[95], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6544, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6537
 *         return self._request_futures_coin_api("get", "exchangeInfo", data=params)
 * 
 *     def futures_coin_order_book(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get the Order Book for the market
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_order_book", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6546
 *         return self._request_futures_coin_api("get", "depth", data=params)
 * 
 *     def futures_coin_recent_trades(self, **params):             # <<<<<<<<<<<<<<
 *         """Get recent trades (up to last 500).
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_421futures_coin_recent_trades(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_420futures_coin_recent_trades, "Get recent trades (up to last 500).\n\n        https://binance-docs.github.io/apidocs/delivery/en/#recent-trades-list\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_421futures_coin_recent_trades = {"futures_coin_recent_trades", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_421futures_coin_recent_trades, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_420futures_coin_recent_trades};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_421futures_coin_recent_trades(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_coin_recent_trades (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6546, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6546, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "futures_coin_recent_trades", 1) < 0) __PYX_ERR(0, 6546, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_coin_recent_trades", 1, 1, 1, i); __PYX_ERR(0, 6546, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6546, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_coin_recent_trades", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6546, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_recent_trades", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_420futures_coin_recent_trades(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_420futures_coin_recent_trades(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_coin_recent_trades", 0);

  /* "unicorn_binance_rest_api/manager.py":6552
 * 
 *         """
 *         return self._request_futures_coin_api("get", "trades", data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_coin_historical_trades(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_coin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6552, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6552, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6552, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[96], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6552, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6546
 *         return self._request_futures_coin_api("get", "depth", data=params)
 * 
 *     def futures_coin_recent_trades(self, **params):             # <<<<<<<<<<<<<<
 *         """Get recent trades (up to last 500).
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_recent_trades", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6554
 *         return self._request_futures_coin_api("get", "trades", data=params)
 * 
 *     def futures_coin_historical_trades(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get older market historical trades.
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_423futures_coin_historical_trades(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_422futures_coin_historical_trades, "\n        Get older market historical trades.\n\n        https://binance-docs.github.io/apidocs/delivery/en/#old-trades-lookup-market_data\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_423futures_coin_historical_trades = {"futures_coin_historical_trades", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_423futures_coin_historical_trades, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_422futures_coin_historical_trades};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_423futures_coin_historical_trades(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_coin_historical_trades (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6554, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6554, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "futures_coin_historical_trades", 1) < 0) __PYX_ERR(0, 6554, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_coin_historical_trades", 1, 1, 1, i); __PYX_ERR(0, 6554, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6554, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_coin_historical_trades", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6554, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_historical_trades", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_422futures_coin_historical_trades(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_422futures_coin_historical_trades(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_coin_historical_trades", 0);

  /* "unicorn_binance_rest_api/manager.py":6561
 * 
 *         """
 *         return self._request_futures_coin_api("get", "historicalTrades", data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_coin_aggregate_trades(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_coin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6561, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6561, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6561, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[97], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6561, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6554
 *         return self._request_futures_coin_api("get", "trades", data=params)
 * 
 *     def futures_coin_historical_trades(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get older market historical trades.
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_historical_trades", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6563
 *         return self._request_futures_coin_api("get", "historicalTrades", data=params)
 * 
 *     def futures_coin_aggregate_trades(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get compressed, aggregate trades. Trades that fill at the time, from the same order, with the same
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_425futures_coin_aggregate_trades(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_424futures_coin_aggregate_trades, "\n        Get compressed, aggregate trades. Trades that fill at the time, from the same order, with the same\n        price will have the quantity aggregated.\n\n        https://binance-docs.github.io/apidocs/delivery/en/#compressed-aggregate-trades-list\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_425futures_coin_aggregate_trades = {"futures_coin_aggregate_trades", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_425futures_coin_aggregate_trades, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_424futures_coin_aggregate_trades};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_425futures_coin_aggregate_trades(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_coin_aggregate_trades (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6563, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6563, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "futures_coin_aggregate_trades", 1) < 0) __PYX_ERR(0, 6563, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_coin_aggregate_trades", 1, 1, 1, i); __PYX_ERR(0, 6563, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6563, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_coin_aggregate_trades", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6563, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_aggregate_trades", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_424futures_coin_aggregate_trades(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_424futures_coin_aggregate_trades(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_coin_aggregate_trades", 0);

  /* "unicorn_binance_rest_api/manager.py":6571
 * 
 *         """
 *         return self._request_futures_coin_api("get", "aggTrades", data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_coin_klines(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_coin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6571, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6571, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6571, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[98], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6571, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6563
 *         return self._request_futures_coin_api("get", "historicalTrades", data=params)
 * 
 *     def futures_coin_aggregate_trades(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get compressed, aggregate trades. Trades that fill at the time, from the same order, with the same
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_aggregate_trades", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6573
 *         return self._request_futures_coin_api("get", "aggTrades", data=params)
 * 
 *     def futures_coin_klines(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Kline/candlestick bars for a symbol. Klines are uniquely identified by their open time.
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_427futures_coin_klines(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_426futures_coin_klines, "\n        Kline/candlestick bars for a symbol. Klines are uniquely identified by their open time.\n\n        https://binance-docs.github.io/apidocs/delivery/en/#kline-candlestick-data\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_427futures_coin_klines = {"futures_coin_klines", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_427futures_coin_klines, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_426futures_coin_klines};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_427futures_coin_klines(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_coin_klines (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6573, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6573, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "futures_coin_klines", 1) < 0) __PYX_ERR(0, 6573, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_coin_klines", 1, 1, 1, i); __PYX_ERR(0, 6573, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6573, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_coin_klines", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6573, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_klines", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_426futures_coin_klines(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_426futures_coin_klines(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_coin_klines", 0);

  /* "unicorn_binance_rest_api/manager.py":6580
 * 
 *         """
 *         return self._request_futures_coin_api("get", "klines", data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_coin_continous_klines(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_coin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6580, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6580, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6580, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[99], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6580, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6573
 *         return self._request_futures_coin_api("get", "aggTrades", data=params)
 * 
 *     def futures_coin_klines(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Kline/candlestick bars for a symbol. Klines are uniquely identified by their open time.
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_klines", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6582
 *         return self._request_futures_coin_api("get", "klines", data=params)
 * 
 *     def futures_coin_continous_klines(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Kline/candlestick bars for a specific contract type. Klines are uniquely identified by their open time.
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_429futures_coin_continous_klines(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_428futures_coin_continous_klines, "\n        Kline/candlestick bars for a specific contract type. Klines are uniquely identified by their open time.\n\n        https://binance-docs.github.io/apidocs/delivery/en/#continuous-contract-kline-candlestick-data\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_429futures_coin_continous_klines = {"futures_coin_continous_klines", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_429futures_coin_continous_klines, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_428futures_coin_continous_klines};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_429futures_coin_continous_klines(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_coin_continous_klines (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6582, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6582, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "futures_coin_continous_klines", 1) < 0) __PYX_ERR(0, 6582, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_coin_continous_klines", 1, 1, 1, i); __PYX_ERR(0, 6582, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6582, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_coin_continous_klines", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6582, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_continous_klines", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_428futures_coin_continous_klines(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_428futures_coin_continous_klines(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_coin_continous_klines", 0);

  /* "unicorn_binance_rest_api/manager.py":6589
 * 
 *         """
 *         return self._request_futures_coin_api("get", "continuousKlines", data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_coin_index_price_klines(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_coin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6589, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6589, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6589, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[136], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6589, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6582
 *         return self._request_futures_coin_api("get", "klines", data=params)
 * 
 *     def futures_coin_continous_klines(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Kline/candlestick bars for a specific contract type. Klines are uniquely identified by their open time.
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_continous_klines", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6591
 *         return self._request_futures_coin_api("get", "continuousKlines", data=params)
 * 
 *     def futures_coin_index_price_klines(self, **params):             # <<<<<<<<<<<<<<
 *         """Kline/candlestick bars for the index price of a pair..
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_431futures_coin_index_price_klines(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_430futures_coin_index_price_klines, "Kline/candlestick bars for the index price of a pair..\n\n        https://binance-docs.github.io/apidocs/delivery/en/#index-price-kline-candlestick-data\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_431futures_coin_index_price_klines = {"futures_coin_index_price_klines", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_431futures_coin_index_price_klines, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_430futures_coin_index_price_klines};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_431futures_coin_index_price_klines(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_coin_index_price_klines (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6591, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6591, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "futures_coin_index_price_klines", 1) < 0) __PYX_ERR(0, 6591, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_coin_index_price_klines", 1, 1, 1, i); __PYX_ERR(0, 6591, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6591, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_coin_index_price_klines", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6591, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_index_price_klines", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_430futures_coin_index_price_klines(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_430futures_coin_index_price_klines(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_coin_index_price_klines", 0);

  /* "unicorn_binance_rest_api/manager.py":6597
 * 
 *         """
 *         return self._request_futures_coin_api("get", "indexPriceKlines", data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_coin_mark_price_klines(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_coin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6597, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6597, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6597, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[137], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6597, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6591
 *         return self._request_futures_coin_api("get", "continuousKlines", data=params)
 * 
 *     def futures_coin_index_price_klines(self, **params):             # <<<<<<<<<<<<<<
 *         """Kline/candlestick bars for the index price of a pair..
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_index_price_klines", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6599
 *         return self._request_futures_coin_api("get", "indexPriceKlines", data=params)
 * 
 *     def futures_coin_mark_price_klines(self, **params):             # <<<<<<<<<<<<<<
 *         """Kline/candlestick bars for the index price of a pair..
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_433futures_coin_mark_price_klines(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_432futures_coin_mark_price_klines, "Kline/candlestick bars for the index price of a pair..\n\n        https://binance-docs.github.io/apidocs/delivery/en/#mark-price-kline-candlestick-data\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_433futures_coin_mark_price_klines = {"futures_coin_mark_price_klines", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_433futures_coin_mark_price_klines, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_432futures_coin_mark_price_klines};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_433futures_coin_mark_price_klines(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_coin_mark_price_klines (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6599, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6599, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "futures_coin_mark_price_klines", 1) < 0) __PYX_ERR(0, 6599, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_coin_mark_price_klines", 1, 1, 1, i); __PYX_ERR(0, 6599, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6599, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_coin_mark_price_klines", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6599, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_mark_price_klines", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_432futures_coin_mark_price_klines(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_432futures_coin_mark_price_klines(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_coin_mark_price_klines", 0);

  /* "unicorn_binance_rest_api/manager.py":6605
 * 
 *         """
 *         return self._request_futures_coin_api("get", "markPriceKlines", data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_coin_mark_price(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_coin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6605, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6605, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6605, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[138], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6605, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6599
 *         return self._request_futures_coin_api("get", "indexPriceKlines", data=params)
 * 
 *     def futures_coin_mark_price_klines(self, **params):             # <<<<<<<<<<<<<<
 *         """Kline/candlestick bars for the index price of a pair..
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_mark_price_klines", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6607
 *         return self._request_futures_coin_api("get", "markPriceKlines", data=params)
 * 
 *     def futures_coin_mark_price(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get Mark Price and Funding Rate
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_435futures_coin_mark_price(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_434futures_coin_mark_price, "\n        Get Mark Price and Funding Rate\n\n        https://binance-docs.github.io/apidocs/delivery/en/#index-price-and-mark-price\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_435futures_coin_mark_price = {"futures_coin_mark_price", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_435futures_coin_mark_price, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_434futures_coin_mark_price};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_435futures_coin_mark_price(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_coin_mark_price (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6607, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6607, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "futures_coin_mark_price", 1) < 0) __PYX_ERR(0, 6607, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_coin_mark_price", 1, 1, 1, i); __PYX_ERR(0, 6607, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6607, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_coin_mark_price", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6607, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_mark_price", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_434futures_coin_mark_price(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_434futures_coin_mark_price(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_coin_mark_price", 0);

  /* "unicorn_binance_rest_api/manager.py":6614
 * 
 *         """
 *         return self._request_futures_coin_api("get", "premiumIndex", data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_coin_funding_rate(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_coin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6614, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6614, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6614, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[100], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6614, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6607
 *         return self._request_futures_coin_api("get", "markPriceKlines", data=params)
 * 
 *     def futures_coin_mark_price(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get Mark Price and Funding Rate
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_mark_price", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6616
 *         return self._request_futures_coin_api("get", "premiumIndex", data=params)
 * 
 *     def futures_coin_funding_rate(self, **params):             # <<<<<<<<<<<<<<
 *         """Get funding rate history
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_437futures_coin_funding_rate(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_436futures_coin_funding_rate, "Get funding rate history\n\n        https://binance-docs.github.io/apidocs/delivery/en/#get-funding-rate-history-of-perpetual-futures\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_437futures_coin_funding_rate = {"futures_coin_funding_rate", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_437futures_coin_funding_rate, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_436futures_coin_funding_rate};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_437futures_coin_funding_rate(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_coin_funding_rate (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6616, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6616, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "futures_coin_funding_rate", 1) < 0) __PYX_ERR(0, 6616, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_coin_funding_rate", 1, 1, 1, i); __PYX_ERR(0, 6616, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6616, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_coin_funding_rate", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6616, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_funding_rate", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_436futures_coin_funding_rate(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_436futures_coin_funding_rate(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_coin_funding_rate", 0);

  /* "unicorn_binance_rest_api/manager.py":6622
 * 
 *         """
 *         return self._request_futures_coin_api("get", "fundingRate", data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_coin_ticker(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_coin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6622, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6622, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6622, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[101], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6622, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6616
 *         return self._request_futures_coin_api("get", "premiumIndex", data=params)
 * 
 *     def futures_coin_funding_rate(self, **params):             # <<<<<<<<<<<<<<
 *         """Get funding rate history
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_funding_rate", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6624
 *         return self._request_futures_coin_api("get", "fundingRate", data=params)
 * 
 *     def futures_coin_ticker(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         24 hour rolling window price change statistics.
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_439futures_coin_ticker(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_438futures_coin_ticker, "\n        24 hour rolling window price change statistics.\n\n        https://binance-docs.github.io/apidocs/delivery/en/#24hr-ticker-price-change-statistics\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_439futures_coin_ticker = {"futures_coin_ticker", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_439futures_coin_ticker, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_438futures_coin_ticker};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_439futures_coin_ticker(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_coin_ticker (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6624, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6624, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "futures_coin_ticker", 1) < 0) __PYX_ERR(0, 6624, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_coin_ticker", 1, 1, 1, i); __PYX_ERR(0, 6624, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6624, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_coin_ticker", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6624, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_ticker", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_438futures_coin_ticker(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_438futures_coin_ticker(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_coin_ticker", 0);

  /* "unicorn_binance_rest_api/manager.py":6631
 * 
 *         """
 *         return self._request_futures_coin_api("get", "ticker/24hr", data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_coin_symbol_ticker(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_coin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6631, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6631, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6631, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[102], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6631, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6624
 *         return self._request_futures_coin_api("get", "fundingRate", data=params)
 * 
 *     def futures_coin_ticker(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         24 hour rolling window price change statistics.
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_ticker", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6633
 *         return self._request_futures_coin_api("get", "ticker/24hr", data=params)
 * 
 *     def futures_coin_symbol_ticker(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Latest price for a symbol or symbols.
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_441futures_coin_symbol_ticker(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_440futures_coin_symbol_ticker, "\n        Latest price for a symbol or symbols.\n\n        https://binance-docs.github.io/apidocs/delivery/en/#symbol-price-ticker\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_441futures_coin_symbol_ticker = {"futures_coin_symbol_ticker", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_441futures_coin_symbol_ticker, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_440futures_coin_symbol_ticker};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_441futures_coin_symbol_ticker(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_coin_symbol_ticker (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6633, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6633, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "futures_coin_symbol_ticker", 1) < 0) __PYX_ERR(0, 6633, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_coin_symbol_ticker", 1, 1, 1, i); __PYX_ERR(0, 6633, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6633, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_coin_symbol_ticker", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6633, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_symbol_ticker", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_440futures_coin_symbol_ticker(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_440futures_coin_symbol_ticker(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_coin_symbol_ticker", 0);

  /* "unicorn_binance_rest_api/manager.py":6640
 * 
 *         """
 *         return self._request_futures_coin_api("get", "ticker/price", data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_coin_orderbook_ticker(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_coin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6640, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6640, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6640, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[103], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6640, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6633
 *         return self._request_futures_coin_api("get", "ticker/24hr", data=params)
 * 
 *     def futures_coin_symbol_ticker(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Latest price for a symbol or symbols.
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_symbol_ticker", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6642
 *         return self._request_futures_coin_api("get", "ticker/price", data=params)
 * 
 *     def futures_coin_orderbook_ticker(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Best price/qty on the order book for a symbol or symbols.
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_443futures_coin_orderbook_ticker(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_442futures_coin_orderbook_ticker, "\n        Best price/qty on the order book for a symbol or symbols.\n\n        https://binance-docs.github.io/apidocs/delivery/en/#symbol-order-book-ticker\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_443futures_coin_orderbook_ticker = {"futures_coin_orderbook_ticker", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_443futures_coin_orderbook_ticker, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_442futures_coin_orderbook_ticker};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_443futures_coin_orderbook_ticker(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_coin_orderbook_ticker (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6642, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6642, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "futures_coin_orderbook_ticker", 1) < 0) __PYX_ERR(0, 6642, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_coin_orderbook_ticker", 1, 1, 1, i); __PYX_ERR(0, 6642, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6642, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_coin_orderbook_ticker", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6642, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_orderbook_ticker", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_442futures_coin_orderbook_ticker(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_442futures_coin_orderbook_ticker(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_coin_orderbook_ticker", 0);

  /* "unicorn_binance_rest_api/manager.py":6649
 * 
 *         """
 *         return self._request_futures_coin_api("get", "ticker/bookTicker", data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_coin_liquidation_orders(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_coin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6649, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6649, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6649, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[104], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6649, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6642
 *         return self._request_futures_coin_api("get", "ticker/price", data=params)
 * 
 *     def futures_coin_orderbook_ticker(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Best price/qty on the order book for a symbol or symbols.
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_orderbook_ticker", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6651
 *         return self._request_futures_coin_api("get", "ticker/bookTicker", data=params)
 * 
 *     def futures_coin_liquidation_orders(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get all liquidation orders
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_445futures_coin_liquidation_orders(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_444futures_coin_liquidation_orders, "\n        Get all liquidation orders\n\n        https://binance-docs.github.io/apidocs/delivery/en/#get-all-liquidation-orders\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_445futures_coin_liquidation_orders = {"futures_coin_liquidation_orders", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_445futures_coin_liquidation_orders, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_444futures_coin_liquidation_orders};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_445futures_coin_liquidation_orders(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_coin_liquidation_orders (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6651, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6651, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "futures_coin_liquidation_orders", 1) < 0) __PYX_ERR(0, 6651, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_coin_liquidation_orders", 1, 1, 1, i); __PYX_ERR(0, 6651, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6651, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_coin_liquidation_orders", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6651, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_liquidation_orders", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_444futures_coin_liquidation_orders(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_444futures_coin_liquidation_orders(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_coin_liquidation_orders", 0);

  /* "unicorn_binance_rest_api/manager.py":6658
 * 
 *         """
 *         return self._request_futures_coin_api("get", "allForceOrders", data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_coin_open_interest(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_coin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6658, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6658, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6658, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[139], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6658, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6651
 *         return self._request_futures_coin_api("get", "ticker/bookTicker", data=params)
 * 
 *     def futures_coin_liquidation_orders(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get all liquidation orders
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_liquidation_orders", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6660
 *         return self._request_futures_coin_api("get", "allForceOrders", data=params)
 * 
 *     def futures_coin_open_interest(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get present open interest of a specific symbol.
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_447futures_coin_open_interest(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_446futures_coin_open_interest, "\n        Get present open interest of a specific symbol.\n\n        https://binance-docs.github.io/apidocs/delivery/en/#open-interest\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_447futures_coin_open_interest = {"futures_coin_open_interest", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_447futures_coin_open_interest, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_446futures_coin_open_interest};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_447futures_coin_open_interest(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_coin_open_interest (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6660, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6660, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "futures_coin_open_interest", 1) < 0) __PYX_ERR(0, 6660, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_coin_open_interest", 1, 1, 1, i); __PYX_ERR(0, 6660, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6660, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_coin_open_interest", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6660, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_open_interest", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_446futures_coin_open_interest(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_446futures_coin_open_interest(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_coin_open_interest", 0);

  /* "unicorn_binance_rest_api/manager.py":6667
 * 
 *         """
 *         return self._request_futures_coin_api("get", "openInterest", data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_coin_open_interest_hist(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_coin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6667, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6667, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6667, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[140], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6667, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6660
 *         return self._request_futures_coin_api("get", "allForceOrders", data=params)
 * 
 *     def futures_coin_open_interest(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get present open interest of a specific symbol.
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_open_interest", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6669
 *         return self._request_futures_coin_api("get", "openInterest", data=params)
 * 
 *     def futures_coin_open_interest_hist(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get open interest statistics of a specific symbol.
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_449futures_coin_open_interest_hist(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_448futures_coin_open_interest_hist, "\n        Get open interest statistics of a specific symbol.\n\n        https://binance-docs.github.io/apidocs/delivery/en/#open-interest-statistics-market-data\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_449futures_coin_open_interest_hist = {"futures_coin_open_interest_hist", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_449futures_coin_open_interest_hist, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_448futures_coin_open_interest_hist};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_449futures_coin_open_interest_hist(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_coin_open_interest_hist (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6669, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6669, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "futures_coin_open_interest_hist", 1) < 0) __PYX_ERR(0, 6669, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_coin_open_interest_hist", 1, 1, 1, i); __PYX_ERR(0, 6669, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6669, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_coin_open_interest_hist", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6669, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_open_interest_hist", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_448futures_coin_open_interest_hist(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_448futures_coin_open_interest_hist(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_coin_open_interest_hist", 0);

  /* "unicorn_binance_rest_api/manager.py":6676
 * 
 *         """
 *         return self._request_futures_coin_data_api("get", "openInterestHist", data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_coin_leverage_bracket(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_coin_data_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6676, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6676, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6676, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[107], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6676, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6669
 *         return self._request_futures_coin_api("get", "openInterest", data=params)
 * 
 *     def futures_coin_open_interest_hist(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get open interest statistics of a specific symbol.
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_open_interest_hist", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6678
 *         return self._request_futures_coin_data_api("get", "openInterestHist", data=params)
 * 
 *     def futures_coin_leverage_bracket(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Notional and Leverage Brackets
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_451futures_coin_leverage_bracket(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_450futures_coin_leverage_bracket, "\n        Notional and Leverage Brackets\n\n        https://binance-docs.github.io/apidocs/delivery/en/#notional-bracket-for-pair-user_data\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_451futures_coin_leverage_bracket = {"futures_coin_leverage_bracket", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_451futures_coin_leverage_bracket, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_450futures_coin_leverage_bracket};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_451futures_coin_leverage_bracket(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_coin_leverage_bracket (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6678, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6678, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "futures_coin_leverage_bracket", 1) < 0) __PYX_ERR(0, 6678, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_coin_leverage_bracket", 1, 1, 1, i); __PYX_ERR(0, 6678, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6678, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_coin_leverage_bracket", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6678, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_leverage_bracket", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_450futures_coin_leverage_bracket(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_450futures_coin_leverage_bracket(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_coin_leverage_bracket", 0);

  /* "unicorn_binance_rest_api/manager.py":6685
 * 
 *         """
 *         return self._request_futures_coin_api(             # <<<<<<<<<<<<<<
 *             "get", "leverageBracket", version=2, signed=True, data=params
 *         )
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_coin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6685, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);

  /* "unicorn_binance_rest_api/manager.py":6686
 *         """
 *         return self._request_futures_coin_api(
 *             "get", "leverageBracket", version=2, signed=True, data=params             # <<<<<<<<<<<<<<
 *         )
 * 
*/
  __pyx_t_2 = __Pyx_PyDict_NewPresized(3); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6686, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_version_2, __pyx_mstate_global->__pyx_int_2) < 0) __PYX_ERR(0, 6686, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_signed, Py_True) < 0) __PYX_ERR(0, 6686, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6686, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":6685
 * 
 *         """
 *         return self._request_futures_coin_api(             # <<<<<<<<<<<<<<
 *             "get", "leverageBracket", version=2, signed=True, data=params
 *         )
*/
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[141], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6685, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6678
 *         return self._request_futures_coin_data_api("get", "openInterestHist", data=params)
 * 
 *     def futures_coin_leverage_bracket(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Notional and Leverage Brackets
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_leverage_bracket", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6689
 *         )
 * 
 *     def new_transfer_history(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get future account transaction history list
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_453new_transfer_history(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_452new_transfer_history, "\n        Get future account transaction history list\n\n        https://binance-docs.github.io/apidocs/delivery/en/#new-future-account-transfer\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_453new_transfer_history = {"new_transfer_history", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_453new_transfer_history, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_452new_transfer_history};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_453new_transfer_history(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("new_transfer_history (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6689, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6689, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "new_transfer_history", 1) < 0) __PYX_ERR(0, 6689, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("new_transfer_history", 1, 1, 1, i); __PYX_ERR(0, 6689, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6689, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("new_transfer_history", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6689, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.new_transfer_history", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_452new_transfer_history(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_452new_transfer_history(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("new_transfer_history", 0);

  /* "unicorn_binance_rest_api/manager.py":6696
 * 
 *         """
 *         return self._request_margin_api("get", "asset/transfer", True, data=params)             # <<<<<<<<<<<<<<
 *         # return self._request_margin_api("get", "futures/transfer", True, data=params)
 * 
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6696, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6696, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6696, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[142], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6696, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6689
 *         )
 * 
 *     def new_transfer_history(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get future account transaction history list
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.new_transfer_history", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6699
 *         # return self._request_margin_api("get", "futures/transfer", True, data=params)
 * 
 *     def universal_transfer(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Unviversal transfer api accross different unicorn_binance_rest_api account types
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_455universal_transfer(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_454universal_transfer, "\n        Unviversal transfer api accross different unicorn_binance_rest_api account types\n\n        https://binance-docs.github.io/apidocs/spot/en/#user-universal-transfer\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_455universal_transfer = {"universal_transfer", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_455universal_transfer, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_454universal_transfer};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_455universal_transfer(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("universal_transfer (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6699, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6699, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "universal_transfer", 1) < 0) __PYX_ERR(0, 6699, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("universal_transfer", 1, 1, 1, i); __PYX_ERR(0, 6699, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6699, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("universal_transfer", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6699, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.universal_transfer", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_454universal_transfer(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_454universal_transfer(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("universal_transfer", 0);

  /* "unicorn_binance_rest_api/manager.py":6705
 *         https://binance-docs.github.io/apidocs/spot/en/#user-universal-transfer
 *         """
 *         return self._request_margin_api(             # <<<<<<<<<<<<<<
 *             "post", "asset/transfer", signed=True, data=params
 *         )
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6705, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);

  /* "unicorn_binance_rest_api/manager.py":6706
 *         """
 *         return self._request_margin_api(
 *             "post", "asset/transfer", signed=True, data=params             # <<<<<<<<<<<<<<
 *         )
 * 
*/
  __pyx_t_2 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6706, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_signed, Py_True) < 0) __PYX_ERR(0, 6706, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6706, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":6705
 *         https://binance-docs.github.io/apidocs/spot/en/#user-universal-transfer
 *         """
 *         return self._request_margin_api(             # <<<<<<<<<<<<<<
 *             "post", "asset/transfer", signed=True, data=params
 *         )
*/
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[143], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6705, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6699
 *         # return self._request_margin_api("get", "futures/transfer", True, data=params)
 * 
 *     def universal_transfer(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Unviversal transfer api accross different unicorn_binance_rest_api account types
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.universal_transfer", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6709
 *         )
 * 
 *     def futures_coin_create_order(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Send in a new order.
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_457futures_coin_create_order(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_456futures_coin_create_order, "\n        Send in a new order.\n\n        https://binance-docs.github.io/apidocs/delivery/en/#new-order-trade\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_457futures_coin_create_order = {"futures_coin_create_order", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_457futures_coin_create_order, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_456futures_coin_create_order};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_457futures_coin_create_order(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_coin_create_order (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6709, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6709, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "futures_coin_create_order", 1) < 0) __PYX_ERR(0, 6709, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_coin_create_order", 1, 1, 1, i); __PYX_ERR(0, 6709, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6709, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_coin_create_order", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6709, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_create_order", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_456futures_coin_create_order(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_456futures_coin_create_order(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_coin_create_order", 0);

  /* "unicorn_binance_rest_api/manager.py":6716
 * 
 *         """
 *         return self._request_futures_coin_api("post", "order", True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_coin_place_batch_order(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_coin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6716, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6716, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6716, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[113], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6716, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6709
 *         )
 * 
 *     def futures_coin_create_order(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Send in a new order.
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_create_order", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6718
 *         return self._request_futures_coin_api("post", "order", True, data=params)
 * 
 *     def futures_coin_place_batch_order(self, **params):             # <<<<<<<<<<<<<<
 *         """Send in new orders.
 *         https://binance-docs.github.io/apidocs/delivery/en/#place-multiple-orders-trade
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_459futures_coin_place_batch_order(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_458futures_coin_place_batch_order, "Send in new orders.\n        https://binance-docs.github.io/apidocs/delivery/en/#place-multiple-orders-trade\n        To avoid modifying the existing signature generation and parameter order logic,\n        the url encoding is done on the special query param, batchOrders, in the early stage.\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_459futures_coin_place_batch_order = {"futures_coin_place_batch_order", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_459futures_coin_place_batch_order, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_458futures_coin_place_batch_order};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_459futures_coin_place_batch_order(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_coin_place_batch_order (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6718, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6718, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "futures_coin_place_batch_order", 1) < 0) __PYX_ERR(0, 6718, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_coin_place_batch_order", 1, 1, 1, i); __PYX_ERR(0, 6718, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6718, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_coin_place_batch_order", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6718, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_place_batch_order", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_458futures_coin_place_batch_order(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_458futures_coin_place_batch_order(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_v_query_string = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  size_t __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_coin_place_batch_order", 0);

  /* "unicorn_binance_rest_api/manager.py":6724
 *         the url encoding is done on the special query param, batchOrders, in the early stage.
 *         """
 *         query_string = urlencode(params)             # <<<<<<<<<<<<<<
 *         query_string = query_string.replace('%27', '%22')
 *         params['batchOrders'] = query_string[12:]
*/
  __pyx_t_2 = NULL;
  __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_urlencode); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6724, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __pyx_t_4 = 1;
  #if CYTHON_UNPACK_METHODS
  if (unlikely(PyMethod_Check(__pyx_t_3))) {
    __pyx_t_2 = PyMethod_GET_SELF(__pyx_t_3);
    assert(__pyx_t_2);
    PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_3);
    __Pyx_INCREF(__pyx_t_2);
    __Pyx_INCREF(__pyx__function);
    __Pyx_DECREF_SET(__pyx_t_3, __pyx__function);
    __pyx_t_4 = 0;
  }
  #endif
  {
    PyObject *__pyx_callargs[2] = {__pyx_t_2, __pyx_v_params};
    __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+__pyx_t_4, (2-__pyx_t_4) | (__pyx_t_4*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6724, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
  }
  __pyx_v_query_string = __pyx_t_1;
  __pyx_t_1 = 0;

  /* "unicorn_binance_rest_api/manager.py":6725
 *         """
 *         query_string = urlencode(params)
 *         query_string = query_string.replace('%27', '%22')             # <<<<<<<<<<<<<<
 *         params['batchOrders'] = query_string[12:]
 *         return self._request_futures_coin_api('post', 'batchOrders', True, data=params)
*/
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_query_string, __pyx_mstate_global->__pyx_n_u_replace); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6725, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[114], NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6725, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF_SET(__pyx_v_query_string, __pyx_t_3);
  __pyx_t_3 = 0;

  /* "unicorn_binance_rest_api/manager.py":6726
 *         query_string = urlencode(params)
 *         query_string = query_string.replace('%27', '%22')
 *         params['batchOrders'] = query_string[12:]             # <<<<<<<<<<<<<<
 *         return self._request_futures_coin_api('post', 'batchOrders', True, data=params)
 * 
*/
  __pyx_t_3 = __Pyx_PyObject_GetSlice(__pyx_v_query_string, 12, 0, NULL, NULL, &__pyx_mstate_global->__pyx_slice[2], 1, 0, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6726, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  if (unlikely((PyDict_SetItem(__pyx_v_params, __pyx_mstate_global->__pyx_n_u_batchOrders, __pyx_t_3) < 0))) __PYX_ERR(0, 6726, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;

  /* "unicorn_binance_rest_api/manager.py":6727
 *         query_string = query_string.replace('%27', '%22')
 *         params['batchOrders'] = query_string[12:]
 *         return self._request_futures_coin_api('post', 'batchOrders', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_coin_get_order(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_coin_api); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6727, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6727, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_t_1, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6727, __pyx_L1_error)
  __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_mstate_global->__pyx_tuple[115], __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6727, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_r = __pyx_t_2;
  __pyx_t_2 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6718
 *         return self._request_futures_coin_api("post", "order", True, data=params)
 * 
 *     def futures_coin_place_batch_order(self, **params):             # <<<<<<<<<<<<<<
 *         """Send in new orders.
 *         https://binance-docs.github.io/apidocs/delivery/en/#place-multiple-orders-trade
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_place_batch_order", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_query_string);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6729
 *         return self._request_futures_coin_api('post', 'batchOrders', True, data=params)
 * 
 *     def futures_coin_get_order(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Check an order's status.
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_461futures_coin_get_order(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_460futures_coin_get_order, "\n        Check an order's status.\n\n        https://binance-docs.github.io/apidocs/delivery/en/#query-order-user_data\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_461futures_coin_get_order = {"futures_coin_get_order", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_461futures_coin_get_order, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_460futures_coin_get_order};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_461futures_coin_get_order(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_coin_get_order (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6729, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6729, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "futures_coin_get_order", 1) < 0) __PYX_ERR(0, 6729, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_coin_get_order", 1, 1, 1, i); __PYX_ERR(0, 6729, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6729, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_coin_get_order", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6729, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_get_order", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_460futures_coin_get_order(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_460futures_coin_get_order(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_coin_get_order", 0);

  /* "unicorn_binance_rest_api/manager.py":6736
 * 
 *         """
 *         return self._request_futures_coin_api("get", "order", True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_coin_get_open_orders(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_coin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6736, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6736, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6736, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[116], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6736, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6729
 *         return self._request_futures_coin_api('post', 'batchOrders', True, data=params)
 * 
 *     def futures_coin_get_order(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Check an order's status.
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_get_order", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6738
 *         return self._request_futures_coin_api("get", "order", True, data=params)
 * 
 *     def futures_coin_get_open_orders(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get all open orders on a symbol.
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_463futures_coin_get_open_orders(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_462futures_coin_get_open_orders, "\n        Get all open orders on a symbol.\n\n        https://binance-docs.github.io/apidocs/delivery/en/#current-all-open-orders-user_data\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_463futures_coin_get_open_orders = {"futures_coin_get_open_orders", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_463futures_coin_get_open_orders, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_462futures_coin_get_open_orders};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_463futures_coin_get_open_orders(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_coin_get_open_orders (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6738, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6738, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "futures_coin_get_open_orders", 1) < 0) __PYX_ERR(0, 6738, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_coin_get_open_orders", 1, 1, 1, i); __PYX_ERR(0, 6738, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6738, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_coin_get_open_orders", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6738, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_get_open_orders", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_462futures_coin_get_open_orders(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_462futures_coin_get_open_orders(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_coin_get_open_orders", 0);

  /* "unicorn_binance_rest_api/manager.py":6745
 * 
 *         """
 *         return self._request_futures_coin_api("get", "openOrders", True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_coin_get_all_orders(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_coin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6745, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6745, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6745, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[117], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6745, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6738
 *         return self._request_futures_coin_api("get", "order", True, data=params)
 * 
 *     def futures_coin_get_open_orders(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get all open orders on a symbol.
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_get_open_orders", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6747
 *         return self._request_futures_coin_api("get", "openOrders", True, data=params)
 * 
 *     def futures_coin_get_all_orders(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get all futures account orders; active, canceled, or filled.
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_465futures_coin_get_all_orders(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_464futures_coin_get_all_orders, "\n        Get all futures account orders; active, canceled, or filled.\n\n        https://binance-docs.github.io/apidocs/delivery/en/#all-orders-user_data\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_465futures_coin_get_all_orders = {"futures_coin_get_all_orders", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_465futures_coin_get_all_orders, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_464futures_coin_get_all_orders};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_465futures_coin_get_all_orders(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_coin_get_all_orders (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6747, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6747, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "futures_coin_get_all_orders", 1) < 0) __PYX_ERR(0, 6747, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_coin_get_all_orders", 1, 1, 1, i); __PYX_ERR(0, 6747, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6747, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_coin_get_all_orders", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6747, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_get_all_orders", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_464futures_coin_get_all_orders(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_464futures_coin_get_all_orders(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_coin_get_all_orders", 0);

  /* "unicorn_binance_rest_api/manager.py":6754
 * 
 *         """
 *         return self._request_futures_coin_api(             # <<<<<<<<<<<<<<
 *             "get", "allOrders", signed=True, data=params
 *         )
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_coin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6754, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);

  /* "unicorn_binance_rest_api/manager.py":6755
 *         """
 *         return self._request_futures_coin_api(
 *             "get", "allOrders", signed=True, data=params             # <<<<<<<<<<<<<<
 *         )
 * 
*/
  __pyx_t_2 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6755, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_signed, Py_True) < 0) __PYX_ERR(0, 6755, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6755, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":6754
 * 
 *         """
 *         return self._request_futures_coin_api(             # <<<<<<<<<<<<<<
 *             "get", "allOrders", signed=True, data=params
 *         )
*/
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[144], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6754, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6747
 *         return self._request_futures_coin_api("get", "openOrders", True, data=params)
 * 
 *     def futures_coin_get_all_orders(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get all futures account orders; active, canceled, or filled.
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_get_all_orders", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6758
 *         )
 * 
 *     def futures_coin_cancel_order(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Cancel an active futures order.
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_467futures_coin_cancel_order(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_466futures_coin_cancel_order, "\n        Cancel an active futures order.\n\n        https://binance-docs.github.io/apidocs/delivery/en/#cancel-order-trade\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_467futures_coin_cancel_order = {"futures_coin_cancel_order", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_467futures_coin_cancel_order, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_466futures_coin_cancel_order};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_467futures_coin_cancel_order(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_coin_cancel_order (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6758, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6758, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "futures_coin_cancel_order", 1) < 0) __PYX_ERR(0, 6758, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_coin_cancel_order", 1, 1, 1, i); __PYX_ERR(0, 6758, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6758, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_coin_cancel_order", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6758, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_cancel_order", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_466futures_coin_cancel_order(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_466futures_coin_cancel_order(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_coin_cancel_order", 0);

  /* "unicorn_binance_rest_api/manager.py":6765
 * 
 *         """
 *         return self._request_futures_coin_api(             # <<<<<<<<<<<<<<
 *             "delete", "order", signed=True, data=params
 *         )
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_coin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6765, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);

  /* "unicorn_binance_rest_api/manager.py":6766
 *         """
 *         return self._request_futures_coin_api(
 *             "delete", "order", signed=True, data=params             # <<<<<<<<<<<<<<
 *         )
 * 
*/
  __pyx_t_2 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6766, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_signed, Py_True) < 0) __PYX_ERR(0, 6766, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6766, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":6765
 * 
 *         """
 *         return self._request_futures_coin_api(             # <<<<<<<<<<<<<<
 *             "delete", "order", signed=True, data=params
 *         )
*/
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[145], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6765, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6758
 *         )
 * 
 *     def futures_coin_cancel_order(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Cancel an active futures order.
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_cancel_order", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6769
 *         )
 * 
 *     def futures_coin_cancel_all_open_orders(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Cancel all open futures orders
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_469futures_coin_cancel_all_open_orders(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_468futures_coin_cancel_all_open_orders, "\n        Cancel all open futures orders\n\n        https://binance-docs.github.io/apidocs/delivery/en/#cancel-all-open-orders-trade\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_469futures_coin_cancel_all_open_orders = {"futures_coin_cancel_all_open_orders", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_469futures_coin_cancel_all_open_orders, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_468futures_coin_cancel_all_open_orders};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_469futures_coin_cancel_all_open_orders(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_coin_cancel_all_open_orders (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6769, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6769, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "futures_coin_cancel_all_open_orders", 1) < 0) __PYX_ERR(0, 6769, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_coin_cancel_all_open_orders", 1, 1, 1, i); __PYX_ERR(0, 6769, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6769, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_coin_cancel_all_open_orders", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6769, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_cancel_all_open_orders", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_468futures_coin_cancel_all_open_orders(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_468futures_coin_cancel_all_open_orders(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_coin_cancel_all_open_orders", 0);

  /* "unicorn_binance_rest_api/manager.py":6776
 * 
 *         """
 *         return self._request_futures_coin_api(             # <<<<<<<<<<<<<<
 *             "delete", "allOpenOrders", signed=True, data=params
 *         )
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_coin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6776, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);

  /* "unicorn_binance_rest_api/manager.py":6777
 *         """
 *         return self._request_futures_coin_api(
 *             "delete", "allOpenOrders", signed=True, data=params             # <<<<<<<<<<<<<<
 *         )
 * 
*/
  __pyx_t_2 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6777, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_signed, Py_True) < 0) __PYX_ERR(0, 6777, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6777, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":6776
 * 
 *         """
 *         return self._request_futures_coin_api(             # <<<<<<<<<<<<<<
 *             "delete", "allOpenOrders", signed=True, data=params
 *         )
*/
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[146], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6776, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6769
 *         )
 * 
 *     def futures_coin_cancel_all_open_orders(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Cancel all open futures orders
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_cancel_all_open_orders", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6780
 *         )
 * 
 *     def futures_coin_cancel_orders(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Cancel multiple futures orders
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_471futures_coin_cancel_orders(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_470futures_coin_cancel_orders, "\n        Cancel multiple futures orders\n\n        https://binance-docs.github.io/apidocs/delivery/en/#cancel-multiple-orders-trade\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_471futures_coin_cancel_orders = {"futures_coin_cancel_orders", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_471futures_coin_cancel_orders, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_470futures_coin_cancel_orders};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_471futures_coin_cancel_orders(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_coin_cancel_orders (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6780, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6780, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "futures_coin_cancel_orders", 1) < 0) __PYX_ERR(0, 6780, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_coin_cancel_orders", 1, 1, 1, i); __PYX_ERR(0, 6780, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6780, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_coin_cancel_orders", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6780, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_cancel_orders", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_470futures_coin_cancel_orders(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_470futures_coin_cancel_orders(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_coin_cancel_orders", 0);

  /* "unicorn_binance_rest_api/manager.py":6787
 * 
 *         """
 *         return self._request_futures_coin_api(             # <<<<<<<<<<<<<<
 *             "delete", "batchOrders", True, data=params
 *         )
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_coin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6787, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);

  /* "unicorn_binance_rest_api/manager.py":6788
 *         """
 *         return self._request_futures_coin_api(
 *             "delete", "batchOrders", True, data=params             # <<<<<<<<<<<<<<
 *         )
 * 
*/
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6788, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6788, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":6787
 * 
 *         """
 *         return self._request_futures_coin_api(             # <<<<<<<<<<<<<<
 *             "delete", "batchOrders", True, data=params
 *         )
*/
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[121], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6787, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6780
 *         )
 * 
 *     def futures_coin_cancel_orders(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Cancel multiple futures orders
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_cancel_orders", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6791
 *         )
 * 
 *     def futures_coin_account_balance(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get futures account balance
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_473futures_coin_account_balance(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_472futures_coin_account_balance, "\n        Get futures account balance\n\n        https://binance-docs.github.io/apidocs/delivery/en/#futures-account-balance-user_data\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_473futures_coin_account_balance = {"futures_coin_account_balance", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_473futures_coin_account_balance, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_472futures_coin_account_balance};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_473futures_coin_account_balance(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_coin_account_balance (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6791, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6791, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "futures_coin_account_balance", 1) < 0) __PYX_ERR(0, 6791, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_coin_account_balance", 1, 1, 1, i); __PYX_ERR(0, 6791, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6791, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_coin_account_balance", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6791, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_account_balance", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_472futures_coin_account_balance(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_472futures_coin_account_balance(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_coin_account_balance", 0);

  /* "unicorn_binance_rest_api/manager.py":6798
 * 
 *         """
 *         return self._request_futures_coin_api(             # <<<<<<<<<<<<<<
 *             "get", "balance", signed=True, data=params
 *         )
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_coin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6798, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);

  /* "unicorn_binance_rest_api/manager.py":6799
 *         """
 *         return self._request_futures_coin_api(
 *             "get", "balance", signed=True, data=params             # <<<<<<<<<<<<<<
 *         )
 * 
*/
  __pyx_t_2 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6799, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_signed, Py_True) < 0) __PYX_ERR(0, 6799, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6799, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":6798
 * 
 *         """
 *         return self._request_futures_coin_api(             # <<<<<<<<<<<<<<
 *             "get", "balance", signed=True, data=params
 *         )
*/
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[147], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6798, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6791
 *         )
 * 
 *     def futures_coin_account_balance(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get futures account balance
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_account_balance", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6802
 *         )
 * 
 *     def futures_coin_account(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get current account information.
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_475futures_coin_account(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_474futures_coin_account, "\n        Get current account information.\n\n        https://binance-docs.github.io/apidocs/delivery/en/#account-information-user_data\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_475futures_coin_account = {"futures_coin_account", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_475futures_coin_account, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_474futures_coin_account};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_475futures_coin_account(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_coin_account (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6802, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6802, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "futures_coin_account", 1) < 0) __PYX_ERR(0, 6802, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_coin_account", 1, 1, 1, i); __PYX_ERR(0, 6802, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6802, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_coin_account", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6802, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_account", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_474futures_coin_account(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_474futures_coin_account(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_coin_account", 0);

  /* "unicorn_binance_rest_api/manager.py":6809
 * 
 *         """
 *         return self._request_futures_coin_api(             # <<<<<<<<<<<<<<
 *             "get", "account", signed=True, data=params
 *         )
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_coin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6809, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);

  /* "unicorn_binance_rest_api/manager.py":6810
 *         """
 *         return self._request_futures_coin_api(
 *             "get", "account", signed=True, data=params             # <<<<<<<<<<<<<<
 *         )
 * 
*/
  __pyx_t_2 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6810, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_signed, Py_True) < 0) __PYX_ERR(0, 6810, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6810, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":6809
 * 
 *         """
 *         return self._request_futures_coin_api(             # <<<<<<<<<<<<<<
 *             "get", "account", signed=True, data=params
 *         )
*/
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[148], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6809, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6802
 *         )
 * 
 *     def futures_coin_account(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get current account information.
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_account", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6813
 *         )
 * 
 *     def futures_coin_change_leverage(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Change user's initial leverage of specific symbol market
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_477futures_coin_change_leverage(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_476futures_coin_change_leverage, "\n        Change user's initial leverage of specific symbol market\n\n        https://binance-docs.github.io/apidocs/delivery/en/#change-initial-leverage-trade\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_477futures_coin_change_leverage = {"futures_coin_change_leverage", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_477futures_coin_change_leverage, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_476futures_coin_change_leverage};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_477futures_coin_change_leverage(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_coin_change_leverage (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6813, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6813, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "futures_coin_change_leverage", 1) < 0) __PYX_ERR(0, 6813, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_coin_change_leverage", 1, 1, 1, i); __PYX_ERR(0, 6813, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6813, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_coin_change_leverage", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6813, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_change_leverage", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_476futures_coin_change_leverage(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_476futures_coin_change_leverage(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_coin_change_leverage", 0);

  /* "unicorn_binance_rest_api/manager.py":6820
 * 
 *         """
 *         return self._request_futures_coin_api(             # <<<<<<<<<<<<<<
 *             "post", "leverage", signed=True, data=params
 *         )
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_coin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6820, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);

  /* "unicorn_binance_rest_api/manager.py":6821
 *         """
 *         return self._request_futures_coin_api(
 *             "post", "leverage", signed=True, data=params             # <<<<<<<<<<<<<<
 *         )
 * 
*/
  __pyx_t_2 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6821, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_signed, Py_True) < 0) __PYX_ERR(0, 6821, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6821, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":6820
 * 
 *         """
 *         return self._request_futures_coin_api(             # <<<<<<<<<<<<<<
 *             "post", "leverage", signed=True, data=params
 *         )
*/
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[149], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6820, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6813
 *         )
 * 
 *     def futures_coin_change_leverage(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Change user's initial leverage of specific symbol market
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_change_leverage", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6824
 *         )
 * 
 *     def futures_coin_change_margin_type(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Change the margin type for a symbol
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_479futures_coin_change_margin_type(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_478futures_coin_change_margin_type, "\n        Change the margin type for a symbol\n\n        https://binance-docs.github.io/apidocs/delivery/en/#change-margin-type-trade\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_479futures_coin_change_margin_type = {"futures_coin_change_margin_type", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_479futures_coin_change_margin_type, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_478futures_coin_change_margin_type};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_479futures_coin_change_margin_type(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_coin_change_margin_type (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6824, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6824, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "futures_coin_change_margin_type", 1) < 0) __PYX_ERR(0, 6824, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_coin_change_margin_type", 1, 1, 1, i); __PYX_ERR(0, 6824, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6824, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_coin_change_margin_type", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6824, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_change_margin_type", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_478futures_coin_change_margin_type(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_478futures_coin_change_margin_type(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_coin_change_margin_type", 0);

  /* "unicorn_binance_rest_api/manager.py":6831
 * 
 *         """
 *         return self._request_futures_coin_api(             # <<<<<<<<<<<<<<
 *             "post", "marginType", signed=True, data=params
 *         )
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_coin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6831, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);

  /* "unicorn_binance_rest_api/manager.py":6832
 *         """
 *         return self._request_futures_coin_api(
 *             "post", "marginType", signed=True, data=params             # <<<<<<<<<<<<<<
 *         )
 * 
*/
  __pyx_t_2 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6832, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_signed, Py_True) < 0) __PYX_ERR(0, 6832, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6832, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":6831
 * 
 *         """
 *         return self._request_futures_coin_api(             # <<<<<<<<<<<<<<
 *             "post", "marginType", signed=True, data=params
 *         )
*/
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[150], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6831, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6824
 *         )
 * 
 *     def futures_coin_change_margin_type(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Change the margin type for a symbol
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_change_margin_type", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6835
 *         )
 * 
 *     def futures_coin_change_position_margin(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Change the position margin for a symbol
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_481futures_coin_change_position_margin(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_480futures_coin_change_position_margin, "\n        Change the position margin for a symbol\n\n        https://binance-docs.github.io/apidocs/delivery/en/#modify-isolated-position-margin-trade\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_481futures_coin_change_position_margin = {"futures_coin_change_position_margin", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_481futures_coin_change_position_margin, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_480futures_coin_change_position_margin};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_481futures_coin_change_position_margin(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_coin_change_position_margin (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6835, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6835, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "futures_coin_change_position_margin", 1) < 0) __PYX_ERR(0, 6835, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_coin_change_position_margin", 1, 1, 1, i); __PYX_ERR(0, 6835, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6835, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_coin_change_position_margin", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6835, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_change_position_margin", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_480futures_coin_change_position_margin(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_480futures_coin_change_position_margin(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_coin_change_position_margin", 0);

  /* "unicorn_binance_rest_api/manager.py":6842
 * 
 *         """
 *         return self._request_futures_coin_api(             # <<<<<<<<<<<<<<
 *             "post", "positionMargin", True, data=params
 *         )
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_coin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6842, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);

  /* "unicorn_binance_rest_api/manager.py":6843
 *         """
 *         return self._request_futures_coin_api(
 *             "post", "positionMargin", True, data=params             # <<<<<<<<<<<<<<
 *         )
 * 
*/
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6843, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6843, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":6842
 * 
 *         """
 *         return self._request_futures_coin_api(             # <<<<<<<<<<<<<<
 *             "post", "positionMargin", True, data=params
 *         )
*/
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[126], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6842, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6835
 *         )
 * 
 *     def futures_coin_change_position_margin(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Change the position margin for a symbol
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_change_position_margin", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6846
 *         )
 * 
 *     def futures_coin_position_margin_history(self, **params):             # <<<<<<<<<<<<<<
 *         """Get position margin change history
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_483futures_coin_position_margin_history(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_482futures_coin_position_margin_history, "Get position margin change history\n\n        https://binance-docs.github.io/apidocs/delivery/en/#get-position-margin-change-history-trade\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_483futures_coin_position_margin_history = {"futures_coin_position_margin_history", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_483futures_coin_position_margin_history, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_482futures_coin_position_margin_history};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_483futures_coin_position_margin_history(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_coin_position_margin_history (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6846, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6846, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "futures_coin_position_margin_history", 1) < 0) __PYX_ERR(0, 6846, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_coin_position_margin_history", 1, 1, 1, i); __PYX_ERR(0, 6846, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6846, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_coin_position_margin_history", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6846, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_position_margin_history", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_482futures_coin_position_margin_history(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_482futures_coin_position_margin_history(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_coin_position_margin_history", 0);

  /* "unicorn_binance_rest_api/manager.py":6852
 * 
 *         """
 *         return self._request_futures_coin_api(             # <<<<<<<<<<<<<<
 *             "get", "positionMargin/history", True, data=params
 *         )
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_coin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6852, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);

  /* "unicorn_binance_rest_api/manager.py":6853
 *         """
 *         return self._request_futures_coin_api(
 *             "get", "positionMargin/history", True, data=params             # <<<<<<<<<<<<<<
 *         )
 * 
*/
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6853, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6853, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":6852
 * 
 *         """
 *         return self._request_futures_coin_api(             # <<<<<<<<<<<<<<
 *             "get", "positionMargin/history", True, data=params
 *         )
*/
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[127], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6852, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6846
 *         )
 * 
 *     def futures_coin_position_margin_history(self, **params):             # <<<<<<<<<<<<<<
 *         """Get position margin change history
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_position_margin_history", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6856
 *         )
 * 
 *     def futures_coin_position_information(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get position information
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_485futures_coin_position_information(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_484futures_coin_position_information, "\n        Get position information\n\n        https://binance-docs.github.io/apidocs/delivery/en/#position-information-user_data\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_485futures_coin_position_information = {"futures_coin_position_information", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_485futures_coin_position_information, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_484futures_coin_position_information};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_485futures_coin_position_information(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_coin_position_information (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6856, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6856, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "futures_coin_position_information", 1) < 0) __PYX_ERR(0, 6856, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_coin_position_information", 1, 1, 1, i); __PYX_ERR(0, 6856, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6856, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_coin_position_information", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6856, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_position_information", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_484futures_coin_position_information(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_484futures_coin_position_information(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_coin_position_information", 0);

  /* "unicorn_binance_rest_api/manager.py":6863
 * 
 *         """
 *         return self._request_futures_coin_api("get", "positionRisk", True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_coin_account_trades(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_coin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6863, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6863, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6863, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[128], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6863, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6856
 *         )
 * 
 *     def futures_coin_position_information(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get position information
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_position_information", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6865
 *         return self._request_futures_coin_api("get", "positionRisk", True, data=params)
 * 
 *     def futures_coin_account_trades(self, **params):             # <<<<<<<<<<<<<<
 *         """Get trades for the authenticated account and symbol.
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_487futures_coin_account_trades(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_486futures_coin_account_trades, "Get trades for the authenticated account and symbol.\n\n        https://binance-docs.github.io/apidocs/delivery/en/#account-trade-list-user_data\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_487futures_coin_account_trades = {"futures_coin_account_trades", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_487futures_coin_account_trades, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_486futures_coin_account_trades};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_487futures_coin_account_trades(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_coin_account_trades (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6865, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6865, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "futures_coin_account_trades", 1) < 0) __PYX_ERR(0, 6865, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_coin_account_trades", 1, 1, 1, i); __PYX_ERR(0, 6865, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6865, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_coin_account_trades", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6865, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_account_trades", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_486futures_coin_account_trades(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_486futures_coin_account_trades(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_coin_account_trades", 0);

  /* "unicorn_binance_rest_api/manager.py":6871
 * 
 *         """
 *         return self._request_futures_coin_api("get", "userTrades", True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_coin_income_history(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_coin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6871, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6871, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6871, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[129], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6871, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6865
 *         return self._request_futures_coin_api("get", "positionRisk", True, data=params)
 * 
 *     def futures_coin_account_trades(self, **params):             # <<<<<<<<<<<<<<
 *         """Get trades for the authenticated account and symbol.
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_account_trades", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6873
 *         return self._request_futures_coin_api("get", "userTrades", True, data=params)
 * 
 *     def futures_coin_income_history(self, **params):             # <<<<<<<<<<<<<<
 *         """Get income history for authenticated account
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_489futures_coin_income_history(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_488futures_coin_income_history, "Get income history for authenticated account\n\n        https://binance-docs.github.io/apidocs/delivery/en/#get-income-history-user_data\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_489futures_coin_income_history = {"futures_coin_income_history", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_489futures_coin_income_history, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_488futures_coin_income_history};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_489futures_coin_income_history(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_coin_income_history (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6873, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6873, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "futures_coin_income_history", 1) < 0) __PYX_ERR(0, 6873, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_coin_income_history", 1, 1, 1, i); __PYX_ERR(0, 6873, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6873, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_coin_income_history", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6873, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_income_history", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_488futures_coin_income_history(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_488futures_coin_income_history(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_coin_income_history", 0);

  /* "unicorn_binance_rest_api/manager.py":6879
 * 
 *         """
 *         return self._request_futures_coin_api("get", "income", True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_coin_change_position_mode(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_coin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6879, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6879, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6879, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[130], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6879, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6873
 *         return self._request_futures_coin_api("get", "userTrades", True, data=params)
 * 
 *     def futures_coin_income_history(self, **params):             # <<<<<<<<<<<<<<
 *         """Get income history for authenticated account
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_income_history", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6881
 *         return self._request_futures_coin_api("get", "income", True, data=params)
 * 
 *     def futures_coin_change_position_mode(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Change user's position mode (Hedge Mode or One-way Mode ) on EVERY symbol
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_491futures_coin_change_position_mode(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_490futures_coin_change_position_mode, "\n        Change user's position mode (Hedge Mode or One-way Mode ) on EVERY symbol\n\n        https://binance-docs.github.io/apidocs/delivery/en/#change-position-mode-trade\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_491futures_coin_change_position_mode = {"futures_coin_change_position_mode", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_491futures_coin_change_position_mode, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_490futures_coin_change_position_mode};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_491futures_coin_change_position_mode(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_coin_change_position_mode (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6881, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6881, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "futures_coin_change_position_mode", 1) < 0) __PYX_ERR(0, 6881, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_coin_change_position_mode", 1, 1, 1, i); __PYX_ERR(0, 6881, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6881, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_coin_change_position_mode", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6881, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_change_position_mode", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_490futures_coin_change_position_mode(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_490futures_coin_change_position_mode(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_coin_change_position_mode", 0);

  /* "unicorn_binance_rest_api/manager.py":6887
 *         https://binance-docs.github.io/apidocs/delivery/en/#change-position-mode-trade
 *         """
 *         return self._request_futures_coin_api("post", "positionSide/dual", True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_coin_get_position_mode(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_coin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6887, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6887, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6887, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[131], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6887, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6881
 *         return self._request_futures_coin_api("get", "income", True, data=params)
 * 
 *     def futures_coin_change_position_mode(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Change user's position mode (Hedge Mode or One-way Mode ) on EVERY symbol
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_change_position_mode", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6889
 *         return self._request_futures_coin_api("post", "positionSide/dual", True, data=params)
 * 
 *     def futures_coin_get_position_mode(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get user's position mode (Hedge Mode or One-way Mode ) on EVERY symbol
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_493futures_coin_get_position_mode(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_492futures_coin_get_position_mode, "\n        Get user's position mode (Hedge Mode or One-way Mode ) on EVERY symbol\n\n        https://binance-docs.github.io/apidocs/delivery/en/#get-current-position-mode-user_data\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_493futures_coin_get_position_mode = {"futures_coin_get_position_mode", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_493futures_coin_get_position_mode, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_492futures_coin_get_position_mode};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_493futures_coin_get_position_mode(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_coin_get_position_mode (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6889, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6889, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "futures_coin_get_position_mode", 1) < 0) __PYX_ERR(0, 6889, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_coin_get_position_mode", 1, 1, 1, i); __PYX_ERR(0, 6889, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6889, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_coin_get_position_mode", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6889, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_get_position_mode", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_492futures_coin_get_position_mode(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_492futures_coin_get_position_mode(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_coin_get_position_mode", 0);

  /* "unicorn_binance_rest_api/manager.py":6896
 * 
 *         """
 *         return self._request_futures_coin_api("get", "positionSide/dual", True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_coin_stream_get_listen_key(self, output="value", throw_exception=True, **kwargs):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_coin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6896, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6896, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6896, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[132], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6896, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6889
 *         return self._request_futures_coin_api("post", "positionSide/dual", True, data=params)
 * 
 *     def futures_coin_get_position_mode(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get user's position mode (Hedge Mode or One-way Mode ) on EVERY symbol
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_get_position_mode", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6898
 *         return self._request_futures_coin_api("get", "positionSide/dual", True, data=params)
 * 
 *     def futures_coin_stream_get_listen_key(self, output="value", throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         """Start a new coin futures data stream and return the listen key
 *         If a stream already exists it should return the same key.
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_495futures_coin_stream_get_listen_key(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_494futures_coin_stream_get_listen_key, "Start a new coin futures data stream and return the listen key\n        If a stream already exists it should return the same key.\n        If the stream becomes invalid a new key is returned.\n\n        Can be used to keep the stream alive.\n\n        https://binance-docs.github.io/apidocs/spot/en/#listen-key-margin\n\n        :param output: Set `output` to \"raw_data\" to receive the request resource, default is \"value\" which returns\n                        the plain listenKey.\n        :type output: str\n        :param throw_exception: Default `True`, if `False` the raw response will be returned.\n        :type throw_exception: bool\n        :returns: API response\n\n        .. code-block:: python\n\n            {\n                \"listenKey\": \"pqia91ma19a5s61cv6a81va65sdf19v8a65a1a5s61cv6a81va65sdf19v8a65a1\"\n            }\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_495futures_coin_stream_get_listen_key = {"futures_coin_stream_get_listen_key", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_495futures_coin_stream_get_listen_key, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_494futures_coin_stream_get_listen_key};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_495futures_coin_stream_get_listen_key(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_output = 0;
  PyObject *__pyx_v_throw_exception = 0;
  PyObject *__pyx_v_kwargs = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[3] = {0,0,0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_coin_stream_get_listen_key (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_kwargs = PyDict_New(); if (unlikely(!__pyx_v_kwargs)) return NULL;
  __Pyx_GOTREF(__pyx_v_kwargs);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,&__pyx_mstate_global->__pyx_n_u_output,&__pyx_mstate_global->__pyx_n_u_throw_exception,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6898, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  3:
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 6898, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 6898, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6898, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_kwargs, values, kwd_pos_args, __pyx_kwds_len, "futures_coin_stream_get_listen_key", 1) < 0) __PYX_ERR(0, 6898, __pyx_L3_error)
      if (!values[1]) values[1] = __Pyx_NewRef(((PyObject *)((PyObject*)__pyx_mstate_global->__pyx_n_u_value)));
      if (!values[2]) values[2] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_True)));
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_coin_stream_get_listen_key", 0, 1, 3, i); __PYX_ERR(0, 6898, __pyx_L3_error) }
      }
    } else {
      switch (__pyx_nargs) {
        case  3:
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 6898, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 6898, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6898, __pyx_L3_error)
        break;
        default: goto __pyx_L5_argtuple_error;
      }
      if (!values[1]) values[1] = __Pyx_NewRef(((PyObject *)((PyObject*)__pyx_mstate_global->__pyx_n_u_value)));
      if (!values[2]) values[2] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_True)));
    }
    __pyx_v_self = values[0];
    __pyx_v_output = values[1];
    __pyx_v_throw_exception = values[2];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_coin_stream_get_listen_key", 0, 1, 3, __pyx_nargs); __PYX_ERR(0, 6898, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_kwargs); __pyx_v_kwargs = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_stream_get_listen_key", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_494futures_coin_stream_get_listen_key(__pyx_self, __pyx_v_self, __pyx_v_output, __pyx_v_throw_exception, __pyx_v_kwargs);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_kwargs);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_494futures_coin_stream_get_listen_key(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_output, PyObject *__pyx_v_throw_exception, PyObject *__pyx_v_kwargs) {
  PyObject *__pyx_v_res = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  PyObject *__pyx_t_4 = NULL;
  int __pyx_t_5;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_coin_stream_get_listen_key", 0);

  /* "unicorn_binance_rest_api/manager.py":6923
 * 
 *         """
 *         res = self._request_futures_coin_api('post', 'listenKey', signed=False, data={},             # <<<<<<<<<<<<<<
 *                                              throw_exception=throw_exception, **kwargs)
 *         if output == "value":
*/
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_coin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6923, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_3 = __Pyx_PyDict_NewPresized(3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6923, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  if (PyDict_SetItem(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_signed, Py_False) < 0) __PYX_ERR(0, 6923, __pyx_L1_error)
  __pyx_t_4 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 6923, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (PyDict_SetItem(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_data, __pyx_t_4) < 0) __PYX_ERR(0, 6923, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":6924
 *         """
 *         res = self._request_futures_coin_api('post', 'listenKey', signed=False, data={},
 *                                              throw_exception=throw_exception, **kwargs)             # <<<<<<<<<<<<<<
 *         if output == "value":
 *             return res['listenKey']
*/
  if (PyDict_SetItem(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_throw_exception, __pyx_v_throw_exception) < 0) __PYX_ERR(0, 6923, __pyx_L1_error)
  __pyx_t_2 = __pyx_t_3;
  __pyx_t_3 = 0;
  if (__Pyx_MergeKeywords(__pyx_t_2, __pyx_v_kwargs) < 0) __PYX_ERR(0, 6924, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":6923
 * 
 *         """
 *         res = self._request_futures_coin_api('post', 'listenKey', signed=False, data={},             # <<<<<<<<<<<<<<
 *                                              throw_exception=throw_exception, **kwargs)
 *         if output == "value":
*/
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[133], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6923, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_v_res = __pyx_t_3;
  __pyx_t_3 = 0;

  /* "unicorn_binance_rest_api/manager.py":6925
 *         res = self._request_futures_coin_api('post', 'listenKey', signed=False, data={},
 *                                              throw_exception=throw_exception, **kwargs)
 *         if output == "value":             # <<<<<<<<<<<<<<
 *             return res['listenKey']
 *         elif output == "raw_data":
*/
  __pyx_t_5 = (__Pyx_PyUnicode_Equals(__pyx_v_output, __pyx_mstate_global->__pyx_n_u_value, Py_EQ)); if (unlikely((__pyx_t_5 < 0))) __PYX_ERR(0, 6925, __pyx_L1_error)
  if (__pyx_t_5) {

    /* "unicorn_binance_rest_api/manager.py":6926
 *                                              throw_exception=throw_exception, **kwargs)
 *         if output == "value":
 *             return res['listenKey']             # <<<<<<<<<<<<<<
 *         elif output == "raw_data":
 *             return res
*/
    __Pyx_XDECREF(__pyx_r);
    __pyx_t_3 = __Pyx_PyObject_Dict_GetItem(__pyx_v_res, __pyx_mstate_global->__pyx_n_u_listenKey); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6926, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_r = __pyx_t_3;
    __pyx_t_3 = 0;
    goto __pyx_L0;

    /* "unicorn_binance_rest_api/manager.py":6925
 *         res = self._request_futures_coin_api('post', 'listenKey', signed=False, data={},
 *                                              throw_exception=throw_exception, **kwargs)
 *         if output == "value":             # <<<<<<<<<<<<<<
 *             return res['listenKey']
 *         elif output == "raw_data":
*/
  }

  /* "unicorn_binance_rest_api/manager.py":6927
 *         if output == "value":
 *             return res['listenKey']
 *         elif output == "raw_data":             # <<<<<<<<<<<<<<
 *             return res
 *         else:
*/
  __pyx_t_5 = (__Pyx_PyUnicode_Equals(__pyx_v_output, __pyx_mstate_global->__pyx_n_u_raw_data, Py_EQ)); if (unlikely((__pyx_t_5 < 0))) __PYX_ERR(0, 6927, __pyx_L1_error)
  if (__pyx_t_5) {

    /* "unicorn_binance_rest_api/manager.py":6928
 *             return res['listenKey']
 *         elif output == "raw_data":
 *             return res             # <<<<<<<<<<<<<<
 *         else:
 *             return res['listenKey']
*/
    __Pyx_XDECREF(__pyx_r);
    __Pyx_INCREF(__pyx_v_res);
    __pyx_r = __pyx_v_res;
    goto __pyx_L0;

    /* "unicorn_binance_rest_api/manager.py":6927
 *         if output == "value":
 *             return res['listenKey']
 *         elif output == "raw_data":             # <<<<<<<<<<<<<<
 *             return res
 *         else:
*/
  }

  /* "unicorn_binance_rest_api/manager.py":6930
 *             return res
 *         else:
 *             return res['listenKey']             # <<<<<<<<<<<<<<
 * 
 *     def futures_coin_stream_keepalive(self, listenKey, throw_exception=True, **kwargs):
*/
  /*else*/ {
    __Pyx_XDECREF(__pyx_r);
    __pyx_t_3 = __Pyx_PyObject_Dict_GetItem(__pyx_v_res, __pyx_mstate_global->__pyx_n_u_listenKey); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6930, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_r = __pyx_t_3;
    __pyx_t_3 = 0;
    goto __pyx_L0;
  }

  /* "unicorn_binance_rest_api/manager.py":6898
 *         return self._request_futures_coin_api("get", "positionSide/dual", True, data=params)
 * 
 *     def futures_coin_stream_get_listen_key(self, output="value", throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         """Start a new coin futures data stream and return the listen key
 *         If a stream already exists it should return the same key.
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_stream_get_listen_key", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_res);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6932
 *             return res['listenKey']
 * 
 *     def futures_coin_stream_keepalive(self, listenKey, throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         """PING a coin futures data stream to prevent a timeout.
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_497futures_coin_stream_keepalive(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_496futures_coin_stream_keepalive, "PING a coin futures data stream to prevent a timeout.\n\n        https://binance-docs.github.io/apidocs/spot/en/#listen-key-margin\n\n        :param listenKey: required\n        :type listenKey: str\n        :param throw_exception: Default `True`, if `False` the raw response will be returned.\n        :type throw_exception: bool\n\n        :returns: API response\n\n        .. code-block:: python\n\n            {}\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_497futures_coin_stream_keepalive = {"futures_coin_stream_keepalive", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_497futures_coin_stream_keepalive, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_496futures_coin_stream_keepalive};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_497futures_coin_stream_keepalive(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_listenKey = 0;
  PyObject *__pyx_v_throw_exception = 0;
  PyObject *__pyx_v_kwargs = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[3] = {0,0,0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_coin_stream_keepalive (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_kwargs = PyDict_New(); if (unlikely(!__pyx_v_kwargs)) return NULL;
  __Pyx_GOTREF(__pyx_v_kwargs);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,&__pyx_mstate_global->__pyx_n_u_listenKey,&__pyx_mstate_global->__pyx_n_u_throw_exception,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6932, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  3:
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 6932, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 6932, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6932, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_kwargs, values, kwd_pos_args, __pyx_kwds_len, "futures_coin_stream_keepalive", 1) < 0) __PYX_ERR(0, 6932, __pyx_L3_error)
      if (!values[2]) values[2] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_True)));
      for (Py_ssize_t i = __pyx_nargs; i < 2; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_coin_stream_keepalive", 0, 2, 3, i); __PYX_ERR(0, 6932, __pyx_L3_error) }
      }
    } else {
      switch (__pyx_nargs) {
        case  3:
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 6932, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 6932, __pyx_L3_error)
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6932, __pyx_L3_error)
        break;
        default: goto __pyx_L5_argtuple_error;
      }
      if (!values[2]) values[2] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_True)));
    }
    __pyx_v_self = values[0];
    __pyx_v_listenKey = values[1];
    __pyx_v_throw_exception = values[2];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_coin_stream_keepalive", 0, 2, 3, __pyx_nargs); __PYX_ERR(0, 6932, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_kwargs); __pyx_v_kwargs = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_stream_keepalive", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_496futures_coin_stream_keepalive(__pyx_self, __pyx_v_self, __pyx_v_listenKey, __pyx_v_throw_exception, __pyx_v_kwargs);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_kwargs);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_496futures_coin_stream_keepalive(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_listenKey, PyObject *__pyx_v_throw_exception, PyObject *__pyx_v_kwargs) {
  PyObject *__pyx_v_params = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_coin_stream_keepalive", 0);

  /* "unicorn_binance_rest_api/manager.py":6952
 *         """
 *         params = {
 *             'listenKey': listenKey             # <<<<<<<<<<<<<<
 *         }
 *         return self._request_futures_coin_api('put', 'listenKey', signed=False, data=params,
*/
  __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6952, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_t_1, __pyx_mstate_global->__pyx_n_u_listenKey, __pyx_v_listenKey) < 0) __PYX_ERR(0, 6952, __pyx_L1_error)
  __pyx_v_params = ((PyObject*)__pyx_t_1);
  __pyx_t_1 = 0;

  /* "unicorn_binance_rest_api/manager.py":6954
 *             'listenKey': listenKey
 *         }
 *         return self._request_futures_coin_api('put', 'listenKey', signed=False, data=params,             # <<<<<<<<<<<<<<
 *                                               throw_exception=throw_exception, **kwargs)
 * 
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_coin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6954, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_3 = __Pyx_PyDict_NewPresized(3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6954, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  if (PyDict_SetItem(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_signed, Py_False) < 0) __PYX_ERR(0, 6954, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6954, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":6955
 *         }
 *         return self._request_futures_coin_api('put', 'listenKey', signed=False, data=params,
 *                                               throw_exception=throw_exception, **kwargs)             # <<<<<<<<<<<<<<
 * 
 *     def futures_coin_stream_close(self, listenKey, throw_exception=True, **kwargs):
*/
  if (PyDict_SetItem(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_throw_exception, __pyx_v_throw_exception) < 0) __PYX_ERR(0, 6954, __pyx_L1_error)
  __pyx_t_2 = __pyx_t_3;
  __pyx_t_3 = 0;
  if (__Pyx_MergeKeywords(__pyx_t_2, __pyx_v_kwargs) < 0) __PYX_ERR(0, 6955, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":6954
 *             'listenKey': listenKey
 *         }
 *         return self._request_futures_coin_api('put', 'listenKey', signed=False, data=params,             # <<<<<<<<<<<<<<
 *                                               throw_exception=throw_exception, **kwargs)
 * 
*/
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[134], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6954, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6932
 *             return res['listenKey']
 * 
 *     def futures_coin_stream_keepalive(self, listenKey, throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         """PING a coin futures data stream to prevent a timeout.
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_stream_keepalive", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_params);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6957
 *                                               throw_exception=throw_exception, **kwargs)
 * 
 *     def futures_coin_stream_close(self, listenKey, throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         """Close out a coin futures data stream.
 * 
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_499futures_coin_stream_close(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_498futures_coin_stream_close, "Close out a coin futures data stream.\n\n        https://binance-docs.github.io/apidocs/spot/en/#listen-key-margin\n\n        :param listenKey: required\n        :type listenKey: str\n        :param throw_exception: Default `True`, if `False` the raw response will be returned.\n        :type throw_exception: bool\n\n        :returns: API response\n\n        .. code-block:: python\n\n            {}\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_499futures_coin_stream_close = {"futures_coin_stream_close", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_499futures_coin_stream_close, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_498futures_coin_stream_close};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_499futures_coin_stream_close(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_listenKey = 0;
  PyObject *__pyx_v_throw_exception = 0;
  PyObject *__pyx_v_kwargs = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[3] = {0,0,0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("futures_coin_stream_close (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_kwargs = PyDict_New(); if (unlikely(!__pyx_v_kwargs)) return NULL;
  __Pyx_GOTREF(__pyx_v_kwargs);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,&__pyx_mstate_global->__pyx_n_u_listenKey,&__pyx_mstate_global->__pyx_n_u_throw_exception,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6957, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  3:
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 6957, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 6957, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6957, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_kwargs, values, kwd_pos_args, __pyx_kwds_len, "futures_coin_stream_close", 1) < 0) __PYX_ERR(0, 6957, __pyx_L3_error)
      if (!values[2]) values[2] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_True)));
      for (Py_ssize_t i = __pyx_nargs; i < 2; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("futures_coin_stream_close", 0, 2, 3, i); __PYX_ERR(0, 6957, __pyx_L3_error) }
      }
    } else {
      switch (__pyx_nargs) {
        case  3:
        values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 6957, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  2:
        values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 6957, __pyx_L3_error)
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6957, __pyx_L3_error)
        break;
        default: goto __pyx_L5_argtuple_error;
      }
      if (!values[2]) values[2] = __Pyx_NewRef(((PyObject *)((PyObject*)Py_True)));
    }
    __pyx_v_self = values[0];
    __pyx_v_listenKey = values[1];
    __pyx_v_throw_exception = values[2];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("futures_coin_stream_close", 0, 2, 3, __pyx_nargs); __PYX_ERR(0, 6957, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_kwargs); __pyx_v_kwargs = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_stream_close", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_498futures_coin_stream_close(__pyx_self, __pyx_v_self, __pyx_v_listenKey, __pyx_v_throw_exception, __pyx_v_kwargs);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_kwargs);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_498futures_coin_stream_close(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_listenKey, PyObject *__pyx_v_throw_exception, PyObject *__pyx_v_kwargs) {
  PyObject *__pyx_v_params = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("futures_coin_stream_close", 0);

  /* "unicorn_binance_rest_api/manager.py":6977
 *         """
 *         params = {
 *             'listenKey': listenKey             # <<<<<<<<<<<<<<
 *         }
 *         return self._request_futures_coin_api('delete', 'listenKey', signed=False, data=params,
*/
  __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6977, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_t_1, __pyx_mstate_global->__pyx_n_u_listenKey, __pyx_v_listenKey) < 0) __PYX_ERR(0, 6977, __pyx_L1_error)
  __pyx_v_params = ((PyObject*)__pyx_t_1);
  __pyx_t_1 = 0;

  /* "unicorn_binance_rest_api/manager.py":6979
 *             'listenKey': listenKey
 *         }
 *         return self._request_futures_coin_api('delete', 'listenKey', signed=False, data=params,             # <<<<<<<<<<<<<<
 *                                               throw_exception=throw_exception, **kwargs)
 * 
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_futures_coin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6979, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_3 = __Pyx_PyDict_NewPresized(3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6979, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  if (PyDict_SetItem(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_signed, Py_False) < 0) __PYX_ERR(0, 6979, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 6979, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":6980
 *         }
 *         return self._request_futures_coin_api('delete', 'listenKey', signed=False, data=params,
 *                                               throw_exception=throw_exception, **kwargs)             # <<<<<<<<<<<<<<
 * 
 *     def get_all_coins_info(self, **params):
*/
  if (PyDict_SetItem(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_throw_exception, __pyx_v_throw_exception) < 0) __PYX_ERR(0, 6979, __pyx_L1_error)
  __pyx_t_2 = __pyx_t_3;
  __pyx_t_3 = 0;
  if (__Pyx_MergeKeywords(__pyx_t_2, __pyx_v_kwargs) < 0) __PYX_ERR(0, 6980, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":6979
 *             'listenKey': listenKey
 *         }
 *         return self._request_futures_coin_api('delete', 'listenKey', signed=False, data=params,             # <<<<<<<<<<<<<<
 *                                               throw_exception=throw_exception, **kwargs)
 * 
*/
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[135], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6979, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6957
 *                                               throw_exception=throw_exception, **kwargs)
 * 
 *     def futures_coin_stream_close(self, listenKey, throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         """Close out a coin futures data stream.
 * 
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.futures_coin_stream_close", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_params);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":6982
 *                                               throw_exception=throw_exception, **kwargs)
 * 
 *     def get_all_coins_info(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get information of coins (available for deposit and withdraw) for user.
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_501get_all_coins_info(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_500get_all_coins_info, "\n        Get information of coins (available for deposit and withdraw) for user.\n\n        https://binance-docs.github.io/apidocs/spot/en/#all-coins-39-information-user_data\n\n        :param recvWindow: optional\n        :type recvWindow: int\n\n        :returns: API response\n\n        .. code-block:: python\n\n            {\n                \"coin\": \"BTC\",\n                \"depositAllEnable\": true,\n                \"withdrawAllEnable\": true,\n                \"name\": \"Bitcoin\",\n                \"free\": \"0\",\n                \"locked\": \"0\",\n                \"freeze\": \"0\",\n                \"withdrawing\": \"0\",\n                \"ipoing\": \"0\",\n                \"ipoable\": \"0\",\n                \"storage\": \"0\",\n                \"isLegalMoney\": false,\n                \"trading\": true,\n                \"networkList\": [\n                    {\n                        \"network\": \"BNB\",\n                        \"coin\": \"BTC\",\n                        \"withdrawIntegerMultiple\": \"0.00000001\",\n                        \"isDefault\": false,\n                        \"depositEnable\": true,\n                        \"withdrawEnable\": true,\n                        \"depositDesc\": \"\",\n                        \"withdrawDesc\": \"\",\n                        \"specialTips\": \"Both a MEMO and an Address are required to successfully deposit your BEP2-BTCB\n                                        tokens to Binance.\",\n                        \"name\": \"BEP2\",\n                        \"resetAddressStatus\": false,\n                        \"addressRegex\": \"^(bnb1)[0-9a-z]{38}$\",\n                        \"memoRegex\": \"^[0-9A-Za-z-_]{1,120}$\",\n                        \"withdrawFee\": \"0.0000026\",\n                        \"withdrawMin\": \"0.0000052\",\n                        \"withdrawMax\": \"0\",\n                        \"minConfirm\": 1,\n                        \"unLockConfirm\": 0\n                    },""\n                    {\n                        \"network\": \"BTC\",\n                        \"coin\": \"BTC\",\n                        \"withdrawIntegerMultiple\": \"0.00000001\",\n                        \"isDefault\": true,\n                        \"depositEnable\": true,\n                        \"withdrawEnable\": true,\n                        \"depositDesc\": \"\",\n                        \"withdrawDesc\": \"\",\n                        \"specialTips\": \"\",\n                        \"name\": \"BTC\",\n                        \"resetAddressStatus\": false,\n                        \"addressRegex\": \"^[13][a-km-zA-HJ-NP-Z1-9]{25,34}$|^(bc1)[0-9A-Za-z]{39,59}$\",\n                        \"memoRegex\": \"\",\n                        \"withdrawFee\": \"0.0005\",\n                        \"withdrawMin\": \"0.001\",\n                        \"withdrawMax\": \"0\",\n                        \"minConfirm\": 1,\n                        \"unLockConfirm\": 2\n                    }\n                ]\n            }\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_501get_all_coins_info = {"get_all_coins_info", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_501get_all_coins_info, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_500get_all_coins_info};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_501get_all_coins_info(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_all_coins_info (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6982, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6982, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "get_all_coins_info", 1) < 0) __PYX_ERR(0, 6982, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_all_coins_info", 1, 1, 1, i); __PYX_ERR(0, 6982, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6982, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_all_coins_info", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6982, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_all_coins_info", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_500get_all_coins_info(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_500get_all_coins_info(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_all_coins_info", 0);

  /* "unicorn_binance_rest_api/manager.py":7057
 * 
 *         """
 *         return self._request_margin_api('get', 'capital/config/getall', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_account_snapshot(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7057, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 7057, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 7057, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[151], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 7057, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":6982
 *                                               throw_exception=throw_exception, **kwargs)
 * 
 *     def get_all_coins_info(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get information of coins (available for deposit and withdraw) for user.
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_all_coins_info", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":7059
 *         return self._request_margin_api('get', 'capital/config/getall', True, data=params)
 * 
 *     def get_account_snapshot(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get daily account snapshot of specific type.
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_503get_account_snapshot(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_502get_account_snapshot, "\n        Get daily account snapshot of specific type.\n\n        https://binance-docs.github.io/apidocs/spot/en/#daily-account-snapshot-user_data\n\n        :param type: required. Valid values are SPOT/MARGIN/FUTURES.\n        :type type: string\n        :param startTime: optional\n        :type startTime: int\n        :param endTime: optional\n        :type endTime: int\n        :param limit: optional\n        :type limit: int\n        :param recvWindow: optional\n        :type recvWindow: int\n\n        :returns: API response\n\n        .. code-block:: python\n\n            {\n               \"code\":200, // 200 for success; others are error codes\n               \"msg\":\"\", // error message\n               \"snapshotVos\":[\n                  {\n                     \"data\":{\n                        \"balances\":[\n                           {\n                              \"asset\":\"BTC\",\n                              \"free\":\"0.09905021\",\n                              \"locked\":\"0.00000000\"\n                           },\n                           {\n                              \"asset\":\"USDT\",\n                              \"free\":\"1.89109409\",\n                              \"locked\":\"0.00000000\"\n                           }\n                        ],\n                        \"totalAssetOfBtc\":\"0.09942700\"\n                     },\n                     \"type\":\"spot\",\n                     \"updateTime\":1576281599000\n                  }\n               ]\n            }\n\n        OR\n\n        .. code-block:: python\n\n            {\n               \"code\":200, // 200 for success; others are error codes\n               \"msg\":\"\", // error message\n               \"snapshotVos\":[\n                  {\n                     \"data\":{\n                        \"marginLevel\":\"2748.02909813\",\n                        \"totalAssetOfBtc\":\"0.00274803\",\n                        \"totalLiabilityOfBtc\":\"0.00000100""\",\n                        \"totalNetAssetOfBtc\":\"0.00274750\",\n                        \"userAssets\":[\n                           {\n                              \"asset\":\"XRP\",\n                              \"borrowed\":\"0.00000000\",\n                              \"free\":\"1.00000000\",\n                              \"interest\":\"0.00000000\",\n                              \"locked\":\"0.00000000\",\n                              \"netAsset\":\"1.00000000\"\n                           }\n                        ]\n                     },\n                     \"type\":\"margin\",\n                     \"updateTime\":1576281599000\n                  }\n               ]\n            }\n\n        OR\n\n        .. code-block:: python\n\n            {\n               \"code\":200, // 200 for success; others are error codes\n               \"msg\":\"\", // error message\n               \"snapshotVos\":[\n                  {\n                     \"data\":{\n                        \"assets\":[\n                           {\n                              \"asset\":\"USDT\",\n                              \"marginBalance\":\"118.99782335\",\n                              \"walletBalance\":\"120.23811389\"\n                           }\n                        ],\n                        \"position\":[\n                           {\n                              \"entryPrice\":\"7130.41000000\",\n                              \"markPrice\":\"7257.66239673\",\n                              \"positionAmt\":\"0.01000000\",\n                              \"symbol\":\"BTCUSDT\",\n                              \"unRealizedProfit\":\"1.24029054\"\n                           }\n                        ]\n                     },\n                     \"type\":\"futures\",\n                     \"updateTime\":1576281599000\n                  }\n               ]\n            }\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_503get_account_snapshot = {"get_account_snapshot", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_503get_account_snapshot, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_502get_account_snapshot};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_503get_account_snapshot(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("get_account_snapshot (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 7059, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 7059, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "get_account_snapshot", 1) < 0) __PYX_ERR(0, 7059, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("get_account_snapshot", 1, 1, 1, i); __PYX_ERR(0, 7059, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 7059, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("get_account_snapshot", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 7059, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_account_snapshot", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_502get_account_snapshot(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_502get_account_snapshot(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("get_account_snapshot", 0);

  /* "unicorn_binance_rest_api/manager.py":7173
 * 
 *         """
 *         return self._request_margin_api('get', 'accountSnapshot', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def disable_fast_withdraw_switch(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7173, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 7173, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 7173, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[152], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 7173, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":7059
 *         return self._request_margin_api('get', 'capital/config/getall', True, data=params)
 * 
 *     def get_account_snapshot(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get daily account snapshot of specific type.
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.get_account_snapshot", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":7175
 *         return self._request_margin_api('get', 'accountSnapshot', True, data=params)
 * 
 *     def disable_fast_withdraw_switch(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Disable Fast Withdraw Switch
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_505disable_fast_withdraw_switch(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_504disable_fast_withdraw_switch, "\n        Disable Fast Withdraw Switch\n\n        https://binance-docs.github.io/apidocs/spot/en/#disable-fast-withdraw-switch-user_data\n\n        :param recvWindow: optional\n        :type recvWindow: int\n\n        :returns: API response\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_505disable_fast_withdraw_switch = {"disable_fast_withdraw_switch", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_505disable_fast_withdraw_switch, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_504disable_fast_withdraw_switch};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_505disable_fast_withdraw_switch(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("disable_fast_withdraw_switch (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 7175, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 7175, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "disable_fast_withdraw_switch", 1) < 0) __PYX_ERR(0, 7175, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("disable_fast_withdraw_switch", 1, 1, 1, i); __PYX_ERR(0, 7175, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 7175, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("disable_fast_withdraw_switch", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 7175, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.disable_fast_withdraw_switch", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_504disable_fast_withdraw_switch(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_504disable_fast_withdraw_switch(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("disable_fast_withdraw_switch", 0);

  /* "unicorn_binance_rest_api/manager.py":7189
 * 
 *         """
 *         return self._request_margin_api('post', 'disableFastWithdrawSwitch', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def enable_fast_withdraw_switch(self, **params):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7189, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 7189, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 7189, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[153], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 7189, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":7175
 *         return self._request_margin_api('get', 'accountSnapshot', True, data=params)
 * 
 *     def disable_fast_withdraw_switch(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Disable Fast Withdraw Switch
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.disable_fast_withdraw_switch", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":7191
 *         return self._request_margin_api('post', 'disableFastWithdrawSwitch', True, data=params)
 * 
 *     def enable_fast_withdraw_switch(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Enable Fast Withdraw Switch
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_507enable_fast_withdraw_switch(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_506enable_fast_withdraw_switch, "\n        Enable Fast Withdraw Switch\n\n        https://binance-docs.github.io/apidocs/spot/en/#enable-fast-withdraw-switch-user_data\n\n        :param recvWindow: optional\n        :type recvWindow: int\n\n        :returns: API response\n\n        :raises: BinanceRequestException, BinanceAPIException\n\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_507enable_fast_withdraw_switch = {"enable_fast_withdraw_switch", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_507enable_fast_withdraw_switch, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_506enable_fast_withdraw_switch};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_507enable_fast_withdraw_switch(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_params = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("enable_fast_withdraw_switch (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  __pyx_v_params = PyDict_New(); if (unlikely(!__pyx_v_params)) return NULL;
  __Pyx_GOTREF(__pyx_v_params);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 7191, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 7191, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, __pyx_v_params, values, kwd_pos_args, __pyx_kwds_len, "enable_fast_withdraw_switch", 1) < 0) __PYX_ERR(0, 7191, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("enable_fast_withdraw_switch", 1, 1, 1, i); __PYX_ERR(0, 7191, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 7191, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("enable_fast_withdraw_switch", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 7191, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params); __pyx_v_params = 0;
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.enable_fast_withdraw_switch", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_506enable_fast_withdraw_switch(__pyx_self, __pyx_v_self, __pyx_v_params);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_DECREF(__pyx_v_params);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_506enable_fast_withdraw_switch(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_params) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("enable_fast_withdraw_switch", 0);

  /* "unicorn_binance_rest_api/manager.py":7205
 * 
 *         """
 *         return self._request_margin_api('post', 'enableFastWithdrawSwitch', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def stop_manager(self):
*/
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_request_margin_api); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7205, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 7205, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_data, __pyx_v_params) < 0) __PYX_ERR(0, 7205, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[154], __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 7205, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":7191
 *         return self._request_margin_api('post', 'disableFastWithdrawSwitch', True, data=params)
 * 
 *     def enable_fast_withdraw_switch(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Enable Fast Withdraw Switch
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.enable_fast_withdraw_switch", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "unicorn_binance_rest_api/manager.py":7207
 *         return self._request_margin_api('post', 'enableFastWithdrawSwitch', True, data=params)
 * 
 *     def stop_manager(self):             # <<<<<<<<<<<<<<
 *         """
 *         Stop the BinanceRestApiManager
*/

/* Python wrapper */
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_509stop_manager(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
); /*proto*/
PyDoc_STRVAR(__pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_508stop_manager, "\n        Stop the BinanceRestApiManager\n        ");
static PyMethodDef __pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_509stop_manager = {"stop_manager", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_509stop_manager, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_508stop_manager};
static PyObject *__pyx_pw_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_509stop_manager(PyObject *__pyx_self, 
#if CYTHON_METH_FASTCALL
PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
#else
PyObject *__pyx_args, PyObject *__pyx_kwds
#endif
) {
  PyObject *__pyx_v_self = 0;
  #if !CYTHON_METH_FASTCALL
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
  #endif
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject* values[1] = {0};
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("stop_manager (wrapper)", 0);
  #if !CYTHON_METH_FASTCALL
  #if CYTHON_ASSUME_SAFE_SIZE
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
  #else
  __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
  #endif
  #endif
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
  {
    PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_self,0};
    const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
    if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 7207, __pyx_L3_error)
    if (__pyx_kwds_len > 0) {
      switch (__pyx_nargs) {
        case  1:
        values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
        if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 7207, __pyx_L3_error)
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      const Py_ssize_t kwd_pos_args = __pyx_nargs;
      if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "stop_manager", 0) < 0) __PYX_ERR(0, 7207, __pyx_L3_error)
      for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
        if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("stop_manager", 1, 1, 1, i); __PYX_ERR(0, 7207, __pyx_L3_error) }
      }
    } else if (unlikely(__pyx_nargs != 1)) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
      if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 7207, __pyx_L3_error)
    }
    __pyx_v_self = values[0];
  }
  goto __pyx_L6_skip;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("stop_manager", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 7207, __pyx_L3_error)
  __pyx_L6_skip:;
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L3_error:;
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.stop_manager", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_508stop_manager(__pyx_self, __pyx_v_self);

  /* function exit code */
  for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) {
    Py_XDECREF(values[__pyx_temp]);
  }
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_508stop_manager(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
  PyObject *__pyx_v_error_msg = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  PyObject *__pyx_t_4 = NULL;
  size_t __pyx_t_5;
  PyObject *__pyx_t_6 = NULL;
  PyObject *__pyx_t_7 = NULL;
  PyObject *__pyx_t_8 = NULL;
  int __pyx_t_9;
  int __pyx_t_10;
  PyObject *__pyx_t_11 = NULL;
  PyObject *__pyx_t_12 = NULL;
  PyObject *__pyx_t_13 = NULL;
  PyObject *__pyx_t_14 = NULL;
  int __pyx_t_15;
  char const *__pyx_t_16;
  PyObject *__pyx_t_17 = NULL;
  PyObject *__pyx_t_18 = NULL;
  PyObject *__pyx_t_19 = NULL;
  PyObject *__pyx_t_20 = NULL;
  PyObject *__pyx_t_21 = NULL;
  PyObject *__pyx_t_22 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("stop_manager", 0);

  /* "unicorn_binance_rest_api/manager.py":7211
 *         Stop the BinanceRestApiManager
 *         """
 *         logger.info(f"BinanceRestApiManager.stop_manager() - Stopping ...")             # <<<<<<<<<<<<<<
 *         self.sigterm = True
 *         # close the request session
*/
  __pyx_t_2 = NULL;
  __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_logger); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 7211, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_info); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 7211, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  __pyx_t_5 = 1;
  #if CYTHON_UNPACK_METHODS
  if (unlikely(PyMethod_Check(__pyx_t_4))) {
    __pyx_t_2 = PyMethod_GET_SELF(__pyx_t_4);
    assert(__pyx_t_2);
    PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_4);
    __Pyx_INCREF(__pyx_t_2);
    __Pyx_INCREF(__pyx__function);
    __Pyx_DECREF_SET(__pyx_t_4, __pyx__function);
    __pyx_t_5 = 0;
  }
  #endif
  {
    PyObject *__pyx_callargs[2] = {__pyx_t_2, __pyx_mstate_global->__pyx_kp_u_BinanceRestApiManager_stop_manag};
    __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+__pyx_t_5, (2-__pyx_t_5) | (__pyx_t_5*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7211, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
  }
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

  /* "unicorn_binance_rest_api/manager.py":7212
 *         """
 *         logger.info(f"BinanceRestApiManager.stop_manager() - Stopping ...")
 *         self.sigterm = True             # <<<<<<<<<<<<<<
 *         # close the request session
 *         try:
*/
  if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_sigterm, Py_True) < 0) __PYX_ERR(0, 7212, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":7214
 *         self.sigterm = True
 *         # close the request session
 *         try:             # <<<<<<<<<<<<<<
 *             if self.session is not None:
 *                 self.session.close()
*/
  {
    __Pyx_PyThreadState_declare
    __Pyx_PyThreadState_assign
    __Pyx_ExceptionSave(&__pyx_t_6, &__pyx_t_7, &__pyx_t_8);
    __Pyx_XGOTREF(__pyx_t_6);
    __Pyx_XGOTREF(__pyx_t_7);
    __Pyx_XGOTREF(__pyx_t_8);
    /*try:*/ {

      /* "unicorn_binance_rest_api/manager.py":7215
 *         # close the request session
 *         try:
 *             if self.session is not None:             # <<<<<<<<<<<<<<
 *                 self.session.close()
 *         except AttributeError as error_msg:
*/
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_session); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7215, __pyx_L3_error)
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_9 = (__pyx_t_1 != Py_None);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      if (__pyx_t_9) {

        /* "unicorn_binance_rest_api/manager.py":7216
 *         try:
 *             if self.session is not None:
 *                 self.session.close()             # <<<<<<<<<<<<<<
 *         except AttributeError as error_msg:
 *             logger.debug(f"BinanceRestApiManager.stop_manager() - AttributeError: {error_msg}")
*/
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_mstate_global->__pyx_n_u_session); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 7216, __pyx_L3_error)
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_4 = __pyx_t_2;
        __Pyx_INCREF(__pyx_t_4);
        __pyx_t_5 = 0;
        {
          PyObject *__pyx_callargs[2] = {__pyx_t_4, NULL};
          __pyx_t_1 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_close, __pyx_callargs+__pyx_t_5, (1-__pyx_t_5) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
          if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7216, __pyx_L3_error)
          __Pyx_GOTREF(__pyx_t_1);
        }
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

        /* "unicorn_binance_rest_api/manager.py":7215
 *         # close the request session
 *         try:
 *             if self.session is not None:             # <<<<<<<<<<<<<<
 *                 self.session.close()
 *         except AttributeError as error_msg:
*/
      }

      /* "unicorn_binance_rest_api/manager.py":7214
 *         self.sigterm = True
 *         # close the request session
 *         try:             # <<<<<<<<<<<<<<
 *             if self.session is not None:
 *                 self.session.close()
*/
    }
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
    __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
    goto __pyx_L8_try_end;
    __pyx_L3_error:;
    __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;

    /* "unicorn_binance_rest_api/manager.py":7217
 *             if self.session is not None:
 *                 self.session.close()
 *         except AttributeError as error_msg:             # <<<<<<<<<<<<<<
 *             logger.debug(f"BinanceRestApiManager.stop_manager() - AttributeError: {error_msg}")
 *         return True
*/
    __pyx_t_10 = __Pyx_PyErr_ExceptionMatches(__pyx_builtin_AttributeError);
    if (__pyx_t_10) {
      __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.stop_manager", __pyx_clineno, __pyx_lineno, __pyx_filename);
      if (__Pyx_GetException(&__pyx_t_1, &__pyx_t_2, &__pyx_t_4) < 0) __PYX_ERR(0, 7217, __pyx_L5_except_error)
      __Pyx_XGOTREF(__pyx_t_1);
      __Pyx_XGOTREF(__pyx_t_2);
      __Pyx_XGOTREF(__pyx_t_4);
      __Pyx_INCREF(__pyx_t_2);
      __pyx_v_error_msg = __pyx_t_2;
      /*try:*/ {

        /* "unicorn_binance_rest_api/manager.py":7218
 *                 self.session.close()
 *         except AttributeError as error_msg:
 *             logger.debug(f"BinanceRestApiManager.stop_manager() - AttributeError: {error_msg}")             # <<<<<<<<<<<<<<
 *         return True
*/
        __pyx_t_11 = NULL;
        __Pyx_GetModuleGlobalName(__pyx_t_12, __pyx_mstate_global->__pyx_n_u_logger); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 7218, __pyx_L15_error)
        __Pyx_GOTREF(__pyx_t_12);
        __pyx_t_13 = __Pyx_PyObject_GetAttrStr(__pyx_t_12, __pyx_mstate_global->__pyx_n_u_debug); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 7218, __pyx_L15_error)
        __Pyx_GOTREF(__pyx_t_13);
        __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
        __pyx_t_12 = __Pyx_PyObject_FormatSimple(__pyx_v_error_msg, __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 7218, __pyx_L15_error)
        __Pyx_GOTREF(__pyx_t_12);
        __pyx_t_14 = __Pyx_PyUnicode_Concat(__pyx_mstate_global->__pyx_kp_u_BinanceRestApiManager_stop_manag_2, __pyx_t_12); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 7218, __pyx_L15_error)
        __Pyx_GOTREF(__pyx_t_14);
        __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
        __pyx_t_5 = 1;
        #if CYTHON_UNPACK_METHODS
        if (unlikely(PyMethod_Check(__pyx_t_13))) {
          __pyx_t_11 = PyMethod_GET_SELF(__pyx_t_13);
          assert(__pyx_t_11);
          PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_13);
          __Pyx_INCREF(__pyx_t_11);
          __Pyx_INCREF(__pyx__function);
          __Pyx_DECREF_SET(__pyx_t_13, __pyx__function);
          __pyx_t_5 = 0;
        }
        #endif
        {
          PyObject *__pyx_callargs[2] = {__pyx_t_11, __pyx_t_14};
          __pyx_t_3 = __Pyx_PyObject_FastCall(__pyx_t_13, __pyx_callargs+__pyx_t_5, (2-__pyx_t_5) | (__pyx_t_5*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
          __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
          __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
          __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
          if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 7218, __pyx_L15_error)
          __Pyx_GOTREF(__pyx_t_3);
        }
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      }

      /* "unicorn_binance_rest_api/manager.py":7217
 *             if self.session is not None:
 *                 self.session.close()
 *         except AttributeError as error_msg:             # <<<<<<<<<<<<<<
 *             logger.debug(f"BinanceRestApiManager.stop_manager() - AttributeError: {error_msg}")
 *         return True
*/
      /*finally:*/ {
        /*normal exit:*/{
          __Pyx_DECREF(__pyx_v_error_msg); __pyx_v_error_msg = 0;
          goto __pyx_L16;
        }
        __pyx_L15_error:;
        /*exception exit:*/{
          __Pyx_PyThreadState_declare
          __Pyx_PyThreadState_assign
          __pyx_t_17 = 0; __pyx_t_18 = 0; __pyx_t_19 = 0; __pyx_t_20 = 0; __pyx_t_21 = 0; __pyx_t_22 = 0;
          __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
          __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
          __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
          __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
           __Pyx_ExceptionSwap(&__pyx_t_20, &__pyx_t_21, &__pyx_t_22);
          if ( unlikely(__Pyx_GetException(&__pyx_t_17, &__pyx_t_18, &__pyx_t_19) < 0)) __Pyx_ErrFetch(&__pyx_t_17, &__pyx_t_18, &__pyx_t_19);
          __Pyx_XGOTREF(__pyx_t_17);
          __Pyx_XGOTREF(__pyx_t_18);
          __Pyx_XGOTREF(__pyx_t_19);
          __Pyx_XGOTREF(__pyx_t_20);
          __Pyx_XGOTREF(__pyx_t_21);
          __Pyx_XGOTREF(__pyx_t_22);
          __pyx_t_10 = __pyx_lineno; __pyx_t_15 = __pyx_clineno; __pyx_t_16 = __pyx_filename;
          {
            __Pyx_DECREF(__pyx_v_error_msg); __pyx_v_error_msg = 0;
          }
          __Pyx_XGIVEREF(__pyx_t_20);
          __Pyx_XGIVEREF(__pyx_t_21);
          __Pyx_XGIVEREF(__pyx_t_22);
          __Pyx_ExceptionReset(__pyx_t_20, __pyx_t_21, __pyx_t_22);
          __Pyx_XGIVEREF(__pyx_t_17);
          __Pyx_XGIVEREF(__pyx_t_18);
          __Pyx_XGIVEREF(__pyx_t_19);
          __Pyx_ErrRestore(__pyx_t_17, __pyx_t_18, __pyx_t_19);
          __pyx_t_17 = 0; __pyx_t_18 = 0; __pyx_t_19 = 0; __pyx_t_20 = 0; __pyx_t_21 = 0; __pyx_t_22 = 0;
          __pyx_lineno = __pyx_t_10; __pyx_clineno = __pyx_t_15; __pyx_filename = __pyx_t_16;
          goto __pyx_L5_except_error;
        }
        __pyx_L16:;
      }
      __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
      goto __pyx_L4_exception_handled;
    }
    goto __pyx_L5_except_error;

    /* "unicorn_binance_rest_api/manager.py":7214
 *         self.sigterm = True
 *         # close the request session
 *         try:             # <<<<<<<<<<<<<<
 *             if self.session is not None:
 *                 self.session.close()
*/
    __pyx_L5_except_error:;
    __Pyx_XGIVEREF(__pyx_t_6);
    __Pyx_XGIVEREF(__pyx_t_7);
    __Pyx_XGIVEREF(__pyx_t_8);
    __Pyx_ExceptionReset(__pyx_t_6, __pyx_t_7, __pyx_t_8);
    goto __pyx_L1_error;
    __pyx_L4_exception_handled:;
    __Pyx_XGIVEREF(__pyx_t_6);
    __Pyx_XGIVEREF(__pyx_t_7);
    __Pyx_XGIVEREF(__pyx_t_8);
    __Pyx_ExceptionReset(__pyx_t_6, __pyx_t_7, __pyx_t_8);
    __pyx_L8_try_end:;
  }

  /* "unicorn_binance_rest_api/manager.py":7219
 *         except AttributeError as error_msg:
 *             logger.debug(f"BinanceRestApiManager.stop_manager() - AttributeError: {error_msg}")
 *         return True             # <<<<<<<<<<<<<<
*/
  __Pyx_XDECREF(__pyx_r);
  __Pyx_INCREF(Py_True);
  __pyx_r = Py_True;
  goto __pyx_L0;

  /* "unicorn_binance_rest_api/manager.py":7207
 *         return self._request_margin_api('post', 'enableFastWithdrawSwitch', True, data=params)
 * 
 *     def stop_manager(self):             # <<<<<<<<<<<<<<
 *         """
 *         Stop the BinanceRestApiManager
*/

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_11);
  __Pyx_XDECREF(__pyx_t_12);
  __Pyx_XDECREF(__pyx_t_13);
  __Pyx_XDECREF(__pyx_t_14);
  __Pyx_AddTraceback("unicorn_binance_rest_api.manager.BinanceRestApiManager.stop_manager", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_error_msg);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* #### Code section: module_exttypes ### */

static PyObject *__pyx_tp_new_24unicorn_binance_rest_api_7manager___pyx_defaults(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) {
  PyObject *o;
  #if CYTHON_COMPILING_IN_LIMITED_API
  allocfunc alloc_func = (allocfunc)PyType_GetSlot(t, Py_tp_alloc);
  o = alloc_func(t, 0);
  #else
  o = (*t->tp_alloc)(t, 0);
  if (unlikely(!o)) return 0;
  #endif
  return o;
}

static void __pyx_tp_dealloc_24unicorn_binance_rest_api_7manager___pyx_defaults(PyObject *o) {
  struct __pyx_defaults *p = (struct __pyx_defaults *)o;
  #if CYTHON_USE_TP_FINALIZE
  if (unlikely((PY_VERSION_HEX >= 0x03080000 || __Pyx_PyType_HasFeature(Py_TYPE(o), Py_TPFLAGS_HAVE_FINALIZE)) && __Pyx_PyObject_GetSlot(o, tp_finalize, destructor)) && !__Pyx_PyObject_GC_IsFinalized(o)) {
    if (__Pyx_PyObject_GetSlot(o, tp_dealloc, destructor) == __pyx_tp_dealloc_24unicorn_binance_rest_api_7manager___pyx_defaults) {
      if (PyObject_CallFinalizerFromDealloc(o)) return;
    }
  }
  #endif
  PyObject_GC_UnTrack(o);
  Py_CLEAR(p->arg0);
  #if CYTHON_USE_TYPE_SLOTS
  (*Py_TYPE(o)->tp_free)(o);
  #else
  {
    freefunc tp_free = (freefunc)PyType_GetSlot(Py_TYPE(o), Py_tp_free);
    if (tp_free) tp_free(o);
  }
  #endif
}

static int __pyx_tp_traverse_24unicorn_binance_rest_api_7manager___pyx_defaults(PyObject *o, visitproc v, void *a) {
  int e;
  struct __pyx_defaults *p = (struct __pyx_defaults *)o;
  {
    e = __Pyx_call_type_traverse(o, 1, v, a);
    if (e) return e;
  }
  if (p->arg0) {
    e = (*v)(p->arg0, a); if (e) return e;
  }
  return 0;
}

static int __pyx_tp_clear_24unicorn_binance_rest_api_7manager___pyx_defaults(PyObject *o) {
  PyObject* tmp;
  struct __pyx_defaults *p = (struct __pyx_defaults *)o;
  tmp = ((PyObject*)p->arg0);
  p->arg0 = Py_None; Py_INCREF(Py_None);
  Py_XDECREF(tmp);
  return 0;
}
#if CYTHON_USE_TYPE_SPECS
static PyType_Slot __pyx_type_24unicorn_binance_rest_api_7manager___pyx_defaults_slots[] = {
  {Py_tp_dealloc, (void *)__pyx_tp_dealloc_24unicorn_binance_rest_api_7manager___pyx_defaults},
  {Py_tp_traverse, (void *)__pyx_tp_traverse_24unicorn_binance_rest_api_7manager___pyx_defaults},
  {Py_tp_clear, (void *)__pyx_tp_clear_24unicorn_binance_rest_api_7manager___pyx_defaults},
  {Py_tp_new, (void *)__pyx_tp_new_24unicorn_binance_rest_api_7manager___pyx_defaults},
  {0, 0},
};
static PyType_Spec __pyx_type_24unicorn_binance_rest_api_7manager___pyx_defaults_spec = {
  "unicorn_binance_rest_api.manager.__pyx_defaults",
  sizeof(struct __pyx_defaults),
  0,
  Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC|Py_TPFLAGS_HAVE_FINALIZE,
  __pyx_type_24unicorn_binance_rest_api_7manager___pyx_defaults_slots,
};
#else

static PyTypeObject __pyx_type_24unicorn_binance_rest_api_7manager___pyx_defaults = {
  PyVarObject_HEAD_INIT(0, 0)
  "unicorn_binance_rest_api.manager.""__pyx_defaults", /*tp_name*/
  sizeof(struct __pyx_defaults), /*tp_basicsize*/
  0, /*tp_itemsize*/
  __pyx_tp_dealloc_24unicorn_binance_rest_api_7manager___pyx_defaults, /*tp_dealloc*/
  #if PY_VERSION_HEX < 0x030800b4
  0, /*tp_print*/
  #endif
  #if PY_VERSION_HEX >= 0x030800b4
  0, /*tp_vectorcall_offset*/
  #endif
  0, /*tp_getattr*/
  0, /*tp_setattr*/
  0, /*tp_as_async*/
  0, /*tp_repr*/
  0, /*tp_as_number*/
  0, /*tp_as_sequence*/
  0, /*tp_as_mapping*/
  0, /*tp_hash*/
  0, /*tp_call*/
  0, /*tp_str*/
  0, /*tp_getattro*/
  0, /*tp_setattro*/
  0, /*tp_as_buffer*/
  Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC|Py_TPFLAGS_HAVE_FINALIZE, /*tp_flags*/
  0, /*tp_doc*/
  __pyx_tp_traverse_24unicorn_binance_rest_api_7manager___pyx_defaults, /*tp_traverse*/
  __pyx_tp_clear_24unicorn_binance_rest_api_7manager___pyx_defaults, /*tp_clear*/
  0, /*tp_richcompare*/
  0, /*tp_weaklistoffset*/
  0, /*tp_iter*/
  0, /*tp_iternext*/
  0, /*tp_methods*/
  0, /*tp_members*/
  0, /*tp_getset*/
  0, /*tp_base*/
  0, /*tp_dict*/
  0, /*tp_descr_get*/
  0, /*tp_descr_set*/
  #if !CYTHON_USE_TYPE_SPECS
  0, /*tp_dictoffset*/
  #endif
  0, /*tp_init*/
  0, /*tp_alloc*/
  __pyx_tp_new_24unicorn_binance_rest_api_7manager___pyx_defaults, /*tp_new*/
  0, /*tp_free*/
  0, /*tp_is_gc*/
  0, /*tp_bases*/
  0, /*tp_mro*/
  0, /*tp_cache*/
  0, /*tp_subclasses*/
  0, /*tp_weaklist*/
  0, /*tp_del*/
  0, /*tp_version_tag*/
  #if CYTHON_USE_TP_FINALIZE
  0, /*tp_finalize*/
  #else
  NULL, /*tp_finalize*/
  #endif
  #if PY_VERSION_HEX >= 0x030800b1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800)
  0, /*tp_vectorcall*/
  #endif
  #if __PYX_NEED_TP_PRINT_SLOT == 1
  0, /*tp_print*/
  #endif
  #if PY_VERSION_HEX >= 0x030C0000
  0, /*tp_watched*/
  #endif
  #if PY_VERSION_HEX >= 0x030d00A4
  0, /*tp_versions_used*/
  #endif
  #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 && PY_VERSION_HEX < 0x030a0000
  0, /*tp_pypy_flags*/
  #endif
};
#endif

static PyObject *__pyx_tp_new_24unicorn_binance_rest_api_7manager___pyx_scope_struct__genexpr(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) {
  PyObject *o;
  #if CYTHON_COMPILING_IN_LIMITED_API
  allocfunc alloc_func = (allocfunc)PyType_GetSlot(t, Py_tp_alloc);
  o = alloc_func(t, 0);
  #else
  #if CYTHON_USE_FREELISTS
  if (likely((int)(__pyx_mstate_global->__pyx_freecount_24unicorn_binance_rest_api_7manager___pyx_scope_struct__genexpr > 0) & (int)(t->tp_basicsize == sizeof(struct __pyx_obj_24unicorn_binance_rest_api_7manager___pyx_scope_struct__genexpr)))) {
    o = (PyObject*)__pyx_mstate_global->__pyx_freelist_24unicorn_binance_rest_api_7manager___pyx_scope_struct__genexpr[--__pyx_mstate_global->__pyx_freecount_24unicorn_binance_rest_api_7manager___pyx_scope_struct__genexpr];
    memset(o, 0, sizeof(struct __pyx_obj_24unicorn_binance_rest_api_7manager___pyx_scope_struct__genexpr));
    (void) PyObject_INIT(o, t);
    PyObject_GC_Track(o);
  } else
  #endif
  {
    o = (*t->tp_alloc)(t, 0);
    if (unlikely(!o)) return 0;
  }
  #endif
  return o;
}

static void __pyx_tp_dealloc_24unicorn_binance_rest_api_7manager___pyx_scope_struct__genexpr(PyObject *o) {
  struct __pyx_obj_24unicorn_binance_rest_api_7manager___pyx_scope_struct__genexpr *p = (struct __pyx_obj_24unicorn_binance_rest_api_7manager___pyx_scope_struct__genexpr *)o;
  #if CYTHON_USE_TP_FINALIZE
  if (unlikely((PY_VERSION_HEX >= 0x03080000 || __Pyx_PyType_HasFeature(Py_TYPE(o), Py_TPFLAGS_HAVE_FINALIZE)) && __Pyx_PyObject_GetSlot(o, tp_finalize, destructor)) && !__Pyx_PyObject_GC_IsFinalized(o)) {
    if (__Pyx_PyObject_GetSlot(o, tp_dealloc, destructor) == __pyx_tp_dealloc_24unicorn_binance_rest_api_7manager___pyx_scope_struct__genexpr) {
      if (PyObject_CallFinalizerFromDealloc(o)) return;
    }
  }
  #endif
  PyObject_GC_UnTrack(o);
  Py_CLEAR(p->__pyx_genexpr_arg_0);
  Py_CLEAR(p->__pyx_v_data);
  #if CYTHON_USE_FREELISTS
  if (((int)(__pyx_mstate_global->__pyx_freecount_24unicorn_binance_rest_api_7manager___pyx_scope_struct__genexpr < 8) & (int)(Py_TYPE(o)->tp_basicsize == sizeof(struct __pyx_obj_24unicorn_binance_rest_api_7manager___pyx_scope_struct__genexpr)))) {
    __pyx_mstate_global->__pyx_freelist_24unicorn_binance_rest_api_7manager___pyx_scope_struct__genexpr[__pyx_mstate_global->__pyx_freecount_24unicorn_binance_rest_api_7manager___pyx_scope_struct__genexpr++] = ((struct __pyx_obj_24unicorn_binance_rest_api_7manager___pyx_scope_struct__genexpr *)o);
  } else
  #endif
  {
    #if CYTHON_USE_TYPE_SLOTS
    (*Py_TYPE(o)->tp_free)(o);
    #else
    {
      freefunc tp_free = (freefunc)PyType_GetSlot(Py_TYPE(o), Py_tp_free);
      if (tp_free) tp_free(o);
    }
    #endif
  }
}

static int __pyx_tp_traverse_24unicorn_binance_rest_api_7manager___pyx_scope_struct__genexpr(PyObject *o, visitproc v, void *a) {
  int e;
  struct __pyx_obj_24unicorn_binance_rest_api_7manager___pyx_scope_struct__genexpr *p = (struct __pyx_obj_24unicorn_binance_rest_api_7manager___pyx_scope_struct__genexpr *)o;
  {
    e = __Pyx_call_type_traverse(o, 1, v, a);
    if (e) return e;
  }
  if (p->__pyx_genexpr_arg_0) {
    e = (*v)(p->__pyx_genexpr_arg_0, a); if (e) return e;
  }
  if (p->__pyx_v_data) {
    e = (*v)(p->__pyx_v_data, a); if (e) return e;
  }
  return 0;
}
#if CYTHON_USE_TYPE_SPECS
static PyType_Slot __pyx_type_24unicorn_binance_rest_api_7manager___pyx_scope_struct__genexpr_slots[] = {
  {Py_tp_dealloc, (void *)__pyx_tp_dealloc_24unicorn_binance_rest_api_7manager___pyx_scope_struct__genexpr},
  {Py_tp_traverse, (void *)__pyx_tp_traverse_24unicorn_binance_rest_api_7manager___pyx_scope_struct__genexpr},
  {Py_tp_new, (void *)__pyx_tp_new_24unicorn_binance_rest_api_7manager___pyx_scope_struct__genexpr},
  {0, 0},
};
static PyType_Spec __pyx_type_24unicorn_binance_rest_api_7manager___pyx_scope_struct__genexpr_spec = {
  "unicorn_binance_rest_api.manager.__pyx_scope_struct__genexpr",
  sizeof(struct __pyx_obj_24unicorn_binance_rest_api_7manager___pyx_scope_struct__genexpr),
  0,
  Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC|Py_TPFLAGS_HAVE_FINALIZE,
  __pyx_type_24unicorn_binance_rest_api_7manager___pyx_scope_struct__genexpr_slots,
};
#else

static PyTypeObject __pyx_type_24unicorn_binance_rest_api_7manager___pyx_scope_struct__genexpr = {
  PyVarObject_HEAD_INIT(0, 0)
  "unicorn_binance_rest_api.manager.""__pyx_scope_struct__genexpr", /*tp_name*/
  sizeof(struct __pyx_obj_24unicorn_binance_rest_api_7manager___pyx_scope_struct__genexpr), /*tp_basicsize*/
  0, /*tp_itemsize*/
  __pyx_tp_dealloc_24unicorn_binance_rest_api_7manager___pyx_scope_struct__genexpr, /*tp_dealloc*/
  #if PY_VERSION_HEX < 0x030800b4
  0, /*tp_print*/
  #endif
  #if PY_VERSION_HEX >= 0x030800b4
  0, /*tp_vectorcall_offset*/
  #endif
  0, /*tp_getattr*/
  0, /*tp_setattr*/
  0, /*tp_as_async*/
  0, /*tp_repr*/
  0, /*tp_as_number*/
  0, /*tp_as_sequence*/
  0, /*tp_as_mapping*/
  0, /*tp_hash*/
  0, /*tp_call*/
  0, /*tp_str*/
  0, /*tp_getattro*/
  0, /*tp_setattro*/
  0, /*tp_as_buffer*/
  Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC|Py_TPFLAGS_HAVE_FINALIZE, /*tp_flags*/
  0, /*tp_doc*/
  __pyx_tp_traverse_24unicorn_binance_rest_api_7manager___pyx_scope_struct__genexpr, /*tp_traverse*/
  0, /*tp_clear*/
  0, /*tp_richcompare*/
  0, /*tp_weaklistoffset*/
  0, /*tp_iter*/
  0, /*tp_iternext*/
  0, /*tp_methods*/
  0, /*tp_members*/
  0, /*tp_getset*/
  0, /*tp_base*/
  0, /*tp_dict*/
  0, /*tp_descr_get*/
  0, /*tp_descr_set*/
  #if !CYTHON_USE_TYPE_SPECS
  0, /*tp_dictoffset*/
  #endif
  0, /*tp_init*/
  0, /*tp_alloc*/
  __pyx_tp_new_24unicorn_binance_rest_api_7manager___pyx_scope_struct__genexpr, /*tp_new*/
  0, /*tp_free*/
  0, /*tp_is_gc*/
  0, /*tp_bases*/
  0, /*tp_mro*/
  0, /*tp_cache*/
  0, /*tp_subclasses*/
  0, /*tp_weaklist*/
  0, /*tp_del*/
  0, /*tp_version_tag*/
  #if CYTHON_USE_TP_FINALIZE
  0, /*tp_finalize*/
  #else
  NULL, /*tp_finalize*/
  #endif
  #if PY_VERSION_HEX >= 0x030800b1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800)
  0, /*tp_vectorcall*/
  #endif
  #if __PYX_NEED_TP_PRINT_SLOT == 1
  0, /*tp_print*/
  #endif
  #if PY_VERSION_HEX >= 0x030C0000
  0, /*tp_watched*/
  #endif
  #if PY_VERSION_HEX >= 0x030d00A4
  0, /*tp_versions_used*/
  #endif
  #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 && PY_VERSION_HEX < 0x030a0000
  0, /*tp_pypy_flags*/
  #endif
};
#endif

static PyObject *__pyx_tp_new_24unicorn_binance_rest_api_7manager___pyx_scope_struct_1_aggregate_trade_iter(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) {
  PyObject *o;
  #if CYTHON_COMPILING_IN_LIMITED_API
  allocfunc alloc_func = (allocfunc)PyType_GetSlot(t, Py_tp_alloc);
  o = alloc_func(t, 0);
  #else
  #if CYTHON_USE_FREELISTS
  if (likely((int)(__pyx_mstate_global->__pyx_freecount_24unicorn_binance_rest_api_7manager___pyx_scope_struct_1_aggregate_trade_iter > 0) & (int)(t->tp_basicsize == sizeof(struct __pyx_obj_24unicorn_binance_rest_api_7manager___pyx_scope_struct_1_aggregate_trade_iter)))) {
    o = (PyObject*)__pyx_mstate_global->__pyx_freelist_24unicorn_binance_rest_api_7manager___pyx_scope_struct_1_aggregate_trade_iter[--__pyx_mstate_global->__pyx_freecount_24unicorn_binance_rest_api_7manager___pyx_scope_struct_1_aggregate_trade_iter];
    memset(o, 0, sizeof(struct __pyx_obj_24unicorn_binance_rest_api_7manager___pyx_scope_struct_1_aggregate_trade_iter));
    (void) PyObject_INIT(o, t);
    PyObject_GC_Track(o);
  } else
  #endif
  {
    o = (*t->tp_alloc)(t, 0);
    if (unlikely(!o)) return 0;
  }
  #endif
  return o;
}

static void __pyx_tp_dealloc_24unicorn_binance_rest_api_7manager___pyx_scope_struct_1_aggregate_trade_iter(PyObject *o) {
  struct __pyx_obj_24unicorn_binance_rest_api_7manager___pyx_scope_struct_1_aggregate_trade_iter *p = (struct __pyx_obj_24unicorn_binance_rest_api_7manager___pyx_scope_struct_1_aggregate_trade_iter *)o;
  #if CYTHON_USE_TP_FINALIZE
  if (unlikely((PY_VERSION_HEX >= 0x03080000 || __Pyx_PyType_HasFeature(Py_TYPE(o), Py_TPFLAGS_HAVE_FINALIZE)) && __Pyx_PyObject_GetSlot(o, tp_finalize, destructor)) && !__Pyx_PyObject_GC_IsFinalized(o)) {
    if (__Pyx_PyObject_GetSlot(o, tp_dealloc, destructor) == __pyx_tp_dealloc_24unicorn_binance_rest_api_7manager___pyx_scope_struct_1_aggregate_trade_iter) {
      if (PyObject_CallFinalizerFromDealloc(o)) return;
    }
  }
  #endif
  PyObject_GC_UnTrack(o);
  Py_CLEAR(p->__pyx_v_end_ts);
  Py_CLEAR(p->__pyx_v_last_id);
  Py_CLEAR(p->__pyx_v_self);
  Py_CLEAR(p->__pyx_v_start_str);
  Py_CLEAR(p->__pyx_v_start_ts);
  Py_CLEAR(p->__pyx_v_symbol);
  Py_CLEAR(p->__pyx_v_t);
  Py_CLEAR(p->__pyx_v_trades);
  Py_CLEAR(p->__pyx_t_1);
  #if CYTHON_USE_FREELISTS
  if (((int)(__pyx_mstate_global->__pyx_freecount_24unicorn_binance_rest_api_7manager___pyx_scope_struct_1_aggregate_trade_iter < 8) & (int)(Py_TYPE(o)->tp_basicsize == sizeof(struct __pyx_obj_24unicorn_binance_rest_api_7manager___pyx_scope_struct_1_aggregate_trade_iter)))) {
    __pyx_mstate_global->__pyx_freelist_24unicorn_binance_rest_api_7manager___pyx_scope_struct_1_aggregate_trade_iter[__pyx_mstate_global->__pyx_freecount_24unicorn_binance_rest_api_7manager___pyx_scope_struct_1_aggregate_trade_iter++] = ((struct __pyx_obj_24unicorn_binance_rest_api_7manager___pyx_scope_struct_1_aggregate_trade_iter *)o);
  } else
  #endif
  {
    #if CYTHON_USE_TYPE_SLOTS
    (*Py_TYPE(o)->tp_free)(o);
    #else
    {
      freefunc tp_free = (freefunc)PyType_GetSlot(Py_TYPE(o), Py_tp_free);
      if (tp_free) tp_free(o);
    }
    #endif
  }
}

static int __pyx_tp_traverse_24unicorn_binance_rest_api_7manager___pyx_scope_struct_1_aggregate_trade_iter(PyObject *o, visitproc v, void *a) {
  int e;
  struct __pyx_obj_24unicorn_binance_rest_api_7manager___pyx_scope_struct_1_aggregate_trade_iter *p = (struct __pyx_obj_24unicorn_binance_rest_api_7manager___pyx_scope_struct_1_aggregate_trade_iter *)o;
  {
    e = __Pyx_call_type_traverse(o, 1, v, a);
    if (e) return e;
  }
  if (p->__pyx_v_end_ts) {
    e = (*v)(p->__pyx_v_end_ts, a); if (e) return e;
  }
  if (p->__pyx_v_last_id) {
    e = (*v)(p->__pyx_v_last_id, a); if (e) return e;
  }
  if (p->__pyx_v_self) {
    e = (*v)(p->__pyx_v_self, a); if (e) return e;
  }
  if (p->__pyx_v_start_str) {
    e = (*v)(p->__pyx_v_start_str, a); if (e) return e;
  }
  if (p->__pyx_v_start_ts) {
    e = (*v)(p->__pyx_v_start_ts, a); if (e) return e;
  }
  if (p->__pyx_v_symbol) {
    e = (*v)(p->__pyx_v_symbol, a); if (e) return e;
  }
  if (p->__pyx_v_t) {
    e = (*v)(p->__pyx_v_t, a); if (e) return e;
  }
  if (p->__pyx_v_trades) {
    e = (*v)(p->__pyx_v_trades, a); if (e) return e;
  }
  if (p->__pyx_t_1) {
    e = (*v)(p->__pyx_t_1, a); if (e) return e;
  }
  return 0;
}
#if CYTHON_USE_TYPE_SPECS
static PyType_Slot __pyx_type_24unicorn_binance_rest_api_7manager___pyx_scope_struct_1_aggregate_trade_iter_slots[] = {
  {Py_tp_dealloc, (void *)__pyx_tp_dealloc_24unicorn_binance_rest_api_7manager___pyx_scope_struct_1_aggregate_trade_iter},
  {Py_tp_traverse, (void *)__pyx_tp_traverse_24unicorn_binance_rest_api_7manager___pyx_scope_struct_1_aggregate_trade_iter},
  {Py_tp_new, (void *)__pyx_tp_new_24unicorn_binance_rest_api_7manager___pyx_scope_struct_1_aggregate_trade_iter},
  {0, 0},
};
static PyType_Spec __pyx_type_24unicorn_binance_rest_api_7manager___pyx_scope_struct_1_aggregate_trade_iter_spec = {
  "unicorn_binance_rest_api.manager.__pyx_scope_struct_1_aggregate_trade_iter",
  sizeof(struct __pyx_obj_24unicorn_binance_rest_api_7manager___pyx_scope_struct_1_aggregate_trade_iter),
  0,
  Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC|Py_TPFLAGS_HAVE_FINALIZE,
  __pyx_type_24unicorn_binance_rest_api_7manager___pyx_scope_struct_1_aggregate_trade_iter_slots,
};
#else

static PyTypeObject __pyx_type_24unicorn_binance_rest_api_7manager___pyx_scope_struct_1_aggregate_trade_iter = {
  PyVarObject_HEAD_INIT(0, 0)
  "unicorn_binance_rest_api.manager.""__pyx_scope_struct_1_aggregate_trade_iter", /*tp_name*/
  sizeof(struct __pyx_obj_24unicorn_binance_rest_api_7manager___pyx_scope_struct_1_aggregate_trade_iter), /*tp_basicsize*/
  0, /*tp_itemsize*/
  __pyx_tp_dealloc_24unicorn_binance_rest_api_7manager___pyx_scope_struct_1_aggregate_trade_iter, /*tp_dealloc*/
  #if PY_VERSION_HEX < 0x030800b4
  0, /*tp_print*/
  #endif
  #if PY_VERSION_HEX >= 0x030800b4
  0, /*tp_vectorcall_offset*/
  #endif
  0, /*tp_getattr*/
  0, /*tp_setattr*/
  0, /*tp_as_async*/
  0, /*tp_repr*/
  0, /*tp_as_number*/
  0, /*tp_as_sequence*/
  0, /*tp_as_mapping*/
  0, /*tp_hash*/
  0, /*tp_call*/
  0, /*tp_str*/
  0, /*tp_getattro*/
  0, /*tp_setattro*/
  0, /*tp_as_buffer*/
  Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC|Py_TPFLAGS_HAVE_FINALIZE, /*tp_flags*/
  0, /*tp_doc*/
  __pyx_tp_traverse_24unicorn_binance_rest_api_7manager___pyx_scope_struct_1_aggregate_trade_iter, /*tp_traverse*/
  0, /*tp_clear*/
  0, /*tp_richcompare*/
  0, /*tp_weaklistoffset*/
  0, /*tp_iter*/
  0, /*tp_iternext*/
  0, /*tp_methods*/
  0, /*tp_members*/
  0, /*tp_getset*/
  0, /*tp_base*/
  0, /*tp_dict*/
  0, /*tp_descr_get*/
  0, /*tp_descr_set*/
  #if !CYTHON_USE_TYPE_SPECS
  0, /*tp_dictoffset*/
  #endif
  0, /*tp_init*/
  0, /*tp_alloc*/
  __pyx_tp_new_24unicorn_binance_rest_api_7manager___pyx_scope_struct_1_aggregate_trade_iter, /*tp_new*/
  0, /*tp_free*/
  0, /*tp_is_gc*/
  0, /*tp_bases*/
  0, /*tp_mro*/
  0, /*tp_cache*/
  0, /*tp_subclasses*/
  0, /*tp_weaklist*/
  0, /*tp_del*/
  0, /*tp_version_tag*/
  #if CYTHON_USE_TP_FINALIZE
  0, /*tp_finalize*/
  #else
  NULL, /*tp_finalize*/
  #endif
  #if PY_VERSION_HEX >= 0x030800b1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800)
  0, /*tp_vectorcall*/
  #endif
  #if __PYX_NEED_TP_PRINT_SLOT == 1
  0, /*tp_print*/
  #endif
  #if PY_VERSION_HEX >= 0x030C0000
  0, /*tp_watched*/
  #endif
  #if PY_VERSION_HEX >= 0x030d00A4
  0, /*tp_versions_used*/
  #endif
  #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 && PY_VERSION_HEX < 0x030a0000
  0, /*tp_pypy_flags*/
  #endif
};
#endif

static PyObject *__pyx_tp_new_24unicorn_binance_rest_api_7manager___pyx_scope_struct_2_get_historical_klines_generator(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) {
  PyObject *o;
  #if CYTHON_COMPILING_IN_LIMITED_API
  allocfunc alloc_func = (allocfunc)PyType_GetSlot(t, Py_tp_alloc);
  o = alloc_func(t, 0);
  #else
  #if CYTHON_USE_FREELISTS
  if (likely((int)(__pyx_mstate_global->__pyx_freecount_24unicorn_binance_rest_api_7manager___pyx_scope_struct_2_get_historical_klines_generator > 0) & (int)(t->tp_basicsize == sizeof(struct __pyx_obj_24unicorn_binance_rest_api_7manager___pyx_scope_struct_2_get_historical_klines_generator)))) {
    o = (PyObject*)__pyx_mstate_global->__pyx_freelist_24unicorn_binance_rest_api_7manager___pyx_scope_struct_2_get_historical_klines_generator[--__pyx_mstate_global->__pyx_freecount_24unicorn_binance_rest_api_7manager___pyx_scope_struct_2_get_historical_klines_generator];
    memset(o, 0, sizeof(struct __pyx_obj_24unicorn_binance_rest_api_7manager___pyx_scope_struct_2_get_historical_klines_generator));
    (void) PyObject_INIT(o, t);
    PyObject_GC_Track(o);
  } else
  #endif
  {
    o = (*t->tp_alloc)(t, 0);
    if (unlikely(!o)) return 0;
  }
  #endif
  return o;
}

static void __pyx_tp_dealloc_24unicorn_binance_rest_api_7manager___pyx_scope_struct_2_get_historical_klines_generator(PyObject *o) {
  struct __pyx_obj_24unicorn_binance_rest_api_7manager___pyx_scope_struct_2_get_historical_klines_generator *p = (struct __pyx_obj_24unicorn_binance_rest_api_7manager___pyx_scope_struct_2_get_historical_klines_generator *)o;
  #if CYTHON_USE_TP_FINALIZE
  if (unlikely((PY_VERSION_HEX >= 0x03080000 || __Pyx_PyType_HasFeature(Py_TYPE(o), Py_TPFLAGS_HAVE_FINALIZE)) && __Pyx_PyObject_GetSlot(o, tp_finalize, destructor)) && !__Pyx_PyObject_GC_IsFinalized(o)) {
    if (__Pyx_PyObject_GetSlot(o, tp_dealloc, destructor) == __pyx_tp_dealloc_24unicorn_binance_rest_api_7manager___pyx_scope_struct_2_get_historical_klines_generator) {
      if (PyObject_CallFinalizerFromDealloc(o)) return;
    }
  }
  #endif
  PyObject_GC_UnTrack(o);
  Py_CLEAR(p->__pyx_v_end_str);
  Py_CLEAR(p->__pyx_v_end_ts);
  Py_CLEAR(p->__pyx_v_first_valid_ts);
  Py_CLEAR(p->__pyx_v_idx);
  Py_CLEAR(p->__pyx_v_interval);
  Py_CLEAR(p->__pyx_v_o);
  Py_CLEAR(p->__pyx_v_output_data);
  Py_CLEAR(p->__pyx_v_self);
  Py_CLEAR(p->__pyx_v_start_str);
  Py_CLEAR(p->__pyx_v_start_ts);
  Py_CLEAR(p->__pyx_v_symbol);
  Py_CLEAR(p->__pyx_v_timeframe);
  Py_CLEAR(p->__pyx_t_0);
  #if CYTHON_USE_FREELISTS
  if (((int)(__pyx_mstate_global->__pyx_freecount_24unicorn_binance_rest_api_7manager___pyx_scope_struct_2_get_historical_klines_generator < 8) & (int)(Py_TYPE(o)->tp_basicsize == sizeof(struct __pyx_obj_24unicorn_binance_rest_api_7manager___pyx_scope_struct_2_get_historical_klines_generator)))) {
    __pyx_mstate_global->__pyx_freelist_24unicorn_binance_rest_api_7manager___pyx_scope_struct_2_get_historical_klines_generator[__pyx_mstate_global->__pyx_freecount_24unicorn_binance_rest_api_7manager___pyx_scope_struct_2_get_historical_klines_generator++] = ((struct __pyx_obj_24unicorn_binance_rest_api_7manager___pyx_scope_struct_2_get_historical_klines_generator *)o);
  } else
  #endif
  {
    #if CYTHON_USE_TYPE_SLOTS
    (*Py_TYPE(o)->tp_free)(o);
    #else
    {
      freefunc tp_free = (freefunc)PyType_GetSlot(Py_TYPE(o), Py_tp_free);
      if (tp_free) tp_free(o);
    }
    #endif
  }
}

static int __pyx_tp_traverse_24unicorn_binance_rest_api_7manager___pyx_scope_struct_2_get_historical_klines_generator(PyObject *o, visitproc v, void *a) {
  int e;
  struct __pyx_obj_24unicorn_binance_rest_api_7manager___pyx_scope_struct_2_get_historical_klines_generator *p = (struct __pyx_obj_24unicorn_binance_rest_api_7manager___pyx_scope_struct_2_get_historical_klines_generator *)o;
  {
    e = __Pyx_call_type_traverse(o, 1, v, a);
    if (e) return e;
  }
  if (p->__pyx_v_end_str) {
    e = (*v)(p->__pyx_v_end_str, a); if (e) return e;
  }
  if (p->__pyx_v_end_ts) {
    e = (*v)(p->__pyx_v_end_ts, a); if (e) return e;
  }
  if (p->__pyx_v_first_valid_ts) {
    e = (*v)(p->__pyx_v_first_valid_ts, a); if (e) return e;
  }
  if (p->__pyx_v_idx) {
    e = (*v)(p->__pyx_v_idx, a); if (e) return e;
  }
  if (p->__pyx_v_interval) {
    e = (*v)(p->__pyx_v_interval, a); if (e) return e;
  }
  if (p->__pyx_v_o) {
    e = (*v)(p->__pyx_v_o, a); if (e) return e;
  }
  if (p->__pyx_v_output_data) {
    e = (*v)(p->__pyx_v_output_data, a); if (e) return e;
  }
  if (p->__pyx_v_self) {
    e = (*v)(p->__pyx_v_self, a); if (e) return e;
  }
  if (p->__pyx_v_start_str) {
    e = (*v)(p->__pyx_v_start_str, a); if (e) return e;
  }
  if (p->__pyx_v_start_ts) {
    e = (*v)(p->__pyx_v_start_ts, a); if (e) return e;
  }
  if (p->__pyx_v_symbol) {
    e = (*v)(p->__pyx_v_symbol, a); if (e) return e;
  }
  if (p->__pyx_v_timeframe) {
    e = (*v)(p->__pyx_v_timeframe, a); if (e) return e;
  }
  if (p->__pyx_t_0) {
    e = (*v)(p->__pyx_t_0, a); if (e) return e;
  }
  return 0;
}
#if CYTHON_USE_TYPE_SPECS
static PyType_Slot __pyx_type_24unicorn_binance_rest_api_7manager___pyx_scope_struct_2_get_historical_klines_generator_slots[] = {
  {Py_tp_dealloc, (void *)__pyx_tp_dealloc_24unicorn_binance_rest_api_7manager___pyx_scope_struct_2_get_historical_klines_generator},
  {Py_tp_traverse, (void *)__pyx_tp_traverse_24unicorn_binance_rest_api_7manager___pyx_scope_struct_2_get_historical_klines_generator},
  {Py_tp_new, (void *)__pyx_tp_new_24unicorn_binance_rest_api_7manager___pyx_scope_struct_2_get_historical_klines_generator},
  {0, 0},
};
static PyType_Spec __pyx_type_24unicorn_binance_rest_api_7manager___pyx_scope_struct_2_get_historical_klines_generator_spec = {
  "unicorn_binance_rest_api.manager.__pyx_scope_struct_2_get_historical_klines_generator",
  sizeof(struct __pyx_obj_24unicorn_binance_rest_api_7manager___pyx_scope_struct_2_get_historical_klines_generator),
  0,
  Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC|Py_TPFLAGS_HAVE_FINALIZE,
  __pyx_type_24unicorn_binance_rest_api_7manager___pyx_scope_struct_2_get_historical_klines_generator_slots,
};
#else

static PyTypeObject __pyx_type_24unicorn_binance_rest_api_7manager___pyx_scope_struct_2_get_historical_klines_generator = {
  PyVarObject_HEAD_INIT(0, 0)
  "unicorn_binance_rest_api.manager.""__pyx_scope_struct_2_get_historical_klines_generator", /*tp_name*/
  sizeof(struct __pyx_obj_24unicorn_binance_rest_api_7manager___pyx_scope_struct_2_get_historical_klines_generator), /*tp_basicsize*/
  0, /*tp_itemsize*/
  __pyx_tp_dealloc_24unicorn_binance_rest_api_7manager___pyx_scope_struct_2_get_historical_klines_generator, /*tp_dealloc*/
  #if PY_VERSION_HEX < 0x030800b4
  0, /*tp_print*/
  #endif
  #if PY_VERSION_HEX >= 0x030800b4
  0, /*tp_vectorcall_offset*/
  #endif
  0, /*tp_getattr*/
  0, /*tp_setattr*/
  0, /*tp_as_async*/
  0, /*tp_repr*/
  0, /*tp_as_number*/
  0, /*tp_as_sequence*/
  0, /*tp_as_mapping*/
  0, /*tp_hash*/
  0, /*tp_call*/
  0, /*tp_str*/
  0, /*tp_getattro*/
  0, /*tp_setattro*/
  0, /*tp_as_buffer*/
  Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC|Py_TPFLAGS_HAVE_FINALIZE, /*tp_flags*/
  0, /*tp_doc*/
  __pyx_tp_traverse_24unicorn_binance_rest_api_7manager___pyx_scope_struct_2_get_historical_klines_generator, /*tp_traverse*/
  0, /*tp_clear*/
  0, /*tp_richcompare*/
  0, /*tp_weaklistoffset*/
  0, /*tp_iter*/
  0, /*tp_iternext*/
  0, /*tp_methods*/
  0, /*tp_members*/
  0, /*tp_getset*/
  0, /*tp_base*/
  0, /*tp_dict*/
  0, /*tp_descr_get*/
  0, /*tp_descr_set*/
  #if !CYTHON_USE_TYPE_SPECS
  0, /*tp_dictoffset*/
  #endif
  0, /*tp_init*/
  0, /*tp_alloc*/
  __pyx_tp_new_24unicorn_binance_rest_api_7manager___pyx_scope_struct_2_get_historical_klines_generator, /*tp_new*/
  0, /*tp_free*/
  0, /*tp_is_gc*/
  0, /*tp_bases*/
  0, /*tp_mro*/
  0, /*tp_cache*/
  0, /*tp_subclasses*/
  0, /*tp_weaklist*/
  0, /*tp_del*/
  0, /*tp_version_tag*/
  #if CYTHON_USE_TP_FINALIZE
  0, /*tp_finalize*/
  #else
  NULL, /*tp_finalize*/
  #endif
  #if PY_VERSION_HEX >= 0x030800b1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800)
  0, /*tp_vectorcall*/
  #endif
  #if __PYX_NEED_TP_PRINT_SLOT == 1
  0, /*tp_print*/
  #endif
  #if PY_VERSION_HEX >= 0x030C0000
  0, /*tp_watched*/
  #endif
  #if PY_VERSION_HEX >= 0x030d00A4
  0, /*tp_versions_used*/
  #endif
  #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 && PY_VERSION_HEX < 0x030a0000
  0, /*tp_pypy_flags*/
  #endif
};
#endif

static PyMethodDef __pyx_methods[] = {
  {0, 0, 0, 0}
};

static int __pyx_import_star_set(__pyx_mstatetype *__pyx_mstate,PyObject *o, PyObject* py_name, const char *name) {
  static const char* internal_type_names[] = {
    "__pyx_ctuple_long",
    "__pyx_ctuple_long_struct",
    "__pyx_defaults",
    "__pyx_scope_struct_1_aggregate_trade_iter",
    "__pyx_scope_struct_2_get_historical_klines_generator",
    "__pyx_scope_struct__genexpr",
    0
  };
  const char** type_name = internal_type_names;
  while (*type_name) {
    if (__Pyx_StrEq(name, *type_name)) {
      PyErr_Format(PyExc_TypeError, "Cannot overwrite C type %s", name);
      goto bad;
    }
    type_name++;
  }
  if (0);
  else {
    if (PyObject_SetAttr(__pyx_m, py_name, o) < 0) goto bad;
  }
  return 0;
  bad:
  return -1;
}

/* ImportStar */
static int
__Pyx_import_all_from(PyObject *locals, PyObject *v)
{
    PyObject *all = PyObject_GetAttrString(v, "__all__");
    PyObject *dict, *name, *value;
    int skip_leading_underscores = 0;
    int pos, err;
    if (all == NULL) {
        if (!PyErr_ExceptionMatches(PyExc_AttributeError))
            return -1;
        PyErr_Clear();
        dict = PyObject_GetAttrString(v, "__dict__");
        if (dict == NULL) {
            if (!PyErr_ExceptionMatches(PyExc_AttributeError))
                return -1;
            PyErr_SetString(PyExc_ImportError,
            "from-import-* object has no __dict__ and no __all__");
            return -1;
        }
        all = PyMapping_Keys(dict);
        Py_DECREF(dict);
        if (all == NULL)
            return -1;
        skip_leading_underscores = 1;
    }
    for (pos = 0, err = 0; ; pos++) {
        name = PySequence_GetItem(all, pos);
        if (name == NULL) {
            if (!PyErr_ExceptionMatches(PyExc_IndexError))
                err = -1;
            else
                PyErr_Clear();
            break;
        }
        if (skip_leading_underscores && likely(PyUnicode_Check(name))) {
            Py_ssize_t length = __Pyx_PyUnicode_GET_LENGTH(name);
            #if !CYTHON_ASSUME_SAFE_SIZE
            if (unlikely(length < 0)) {
                Py_DECREF(name);
                return -1;
            }
            #endif
            if (likely(length) && __Pyx_PyUnicode_READ_CHAR(name, 0) == '_') {
                Py_DECREF(name);
                continue;
            }
        }
        value = PyObject_GetAttr(v, name);
        if (value == NULL)
            err = -1;
        else if (PyDict_CheckExact(locals))
            err = PyDict_SetItem(locals, name, value);
        else
            err = PyObject_SetItem(locals, name, value);
        Py_DECREF(name);
        Py_XDECREF(value);
        if (err != 0)
            break;
    }
    Py_DECREF(all);
    return err;
}
static int __pyx_import_star(PyObject* m) {
    int i;
    int ret = -1;
    const char* s;
    PyObject *locals = 0;
    PyObject *list = 0;
    PyObject *utf8_name = 0;
    PyObject *name;
    PyObject *item;
    PyObject *import_obj;
    Py_ssize_t size;
    __pyx_mstatetype *mstate = __Pyx_PyModule_GetState(m);
    locals = PyDict_New();              if (!locals) goto bad;
    if (__Pyx_import_all_from(locals, m) < 0) goto bad;
    list = PyDict_Items(locals);        if (!list) goto bad;
    size = __Pyx_PyList_GET_SIZE(list);
    #if !CYTHON_ASSUME_SAFE_SIZE
    if (size < 0) goto bad;
    #endif
    for(i=0; i<size; i++) {
        import_obj = __Pyx_PyList_GET_ITEM(list, i); if (!import_obj) goto bad;
        name = __Pyx_PyTuple_GET_ITEM(import_obj, 0); if (!name) goto bad;
        item = __Pyx_PyTuple_GET_ITEM(import_obj, 1); if (!item) goto bad;
        utf8_name = PyUnicode_AsUTF8String(name);
        if (!utf8_name) goto bad;
        s = __Pyx_PyBytes_AsString(utf8_name); if (!s) goto bad;
        if (__pyx_import_star_set(mstate, item, name, s) < 0) goto bad;
        Py_DECREF(utf8_name); utf8_name = 0;
    }
    ret = 0;
bad:
    Py_XDECREF(locals);
    Py_XDECREF(list);
    Py_XDECREF(utf8_name);
    return ret;
}

/* #### Code section: initfunc_declarations ### */
static CYTHON_SMALL_CODE int __Pyx_InitCachedBuiltins(__pyx_mstatetype *__pyx_mstate); /*proto*/
static CYTHON_SMALL_CODE int __Pyx_InitCachedConstants(__pyx_mstatetype *__pyx_mstate); /*proto*/
static CYTHON_SMALL_CODE int __Pyx_InitGlobals(void); /*proto*/
static CYTHON_SMALL_CODE int __Pyx_InitConstants(__pyx_mstatetype *__pyx_mstate); /*proto*/
static CYTHON_SMALL_CODE int __pyx_import_star_set(__pyx_mstatetype *__pyx_mstate,PyObject *o, PyObject* py_name, const char *name); /*proto*/
static CYTHON_SMALL_CODE int __Pyx_modinit_global_init_code(__pyx_mstatetype *__pyx_mstate); /*proto*/
static CYTHON_SMALL_CODE int __Pyx_modinit_variable_export_code(__pyx_mstatetype *__pyx_mstate); /*proto*/
static CYTHON_SMALL_CODE int __Pyx_modinit_function_export_code(__pyx_mstatetype *__pyx_mstate); /*proto*/
static CYTHON_SMALL_CODE int __Pyx_modinit_type_init_code(__pyx_mstatetype *__pyx_mstate); /*proto*/
static CYTHON_SMALL_CODE int __Pyx_modinit_type_import_code(__pyx_mstatetype *__pyx_mstate); /*proto*/
static CYTHON_SMALL_CODE int __Pyx_modinit_variable_import_code(__pyx_mstatetype *__pyx_mstate); /*proto*/
static CYTHON_SMALL_CODE int __Pyx_modinit_function_import_code(__pyx_mstatetype *__pyx_mstate); /*proto*/
static CYTHON_SMALL_CODE int __Pyx_CreateCodeObjects(__pyx_mstatetype *__pyx_mstate); /*proto*/
/* #### Code section: init_module ### */

static int __Pyx_modinit_global_init_code(__pyx_mstatetype *__pyx_mstate) {
  __Pyx_RefNannyDeclarations
  CYTHON_UNUSED_VAR(__pyx_mstate);
  __Pyx_RefNannySetupContext("__Pyx_modinit_global_init_code", 0);
  /*--- Global init code ---*/
  __Pyx_RefNannyFinishContext();
  return 0;
}

static int __Pyx_modinit_variable_export_code(__pyx_mstatetype *__pyx_mstate) {
  __Pyx_RefNannyDeclarations
  CYTHON_UNUSED_VAR(__pyx_mstate);
  __Pyx_RefNannySetupContext("__Pyx_modinit_variable_export_code", 0);
  /*--- Variable export code ---*/
  __Pyx_RefNannyFinishContext();
  return 0;
}

static int __Pyx_modinit_function_export_code(__pyx_mstatetype *__pyx_mstate) {
  __Pyx_RefNannyDeclarations
  CYTHON_UNUSED_VAR(__pyx_mstate);
  __Pyx_RefNannySetupContext("__Pyx_modinit_function_export_code", 0);
  /*--- Function export code ---*/
  __Pyx_RefNannyFinishContext();
  return 0;
}

static int __Pyx_modinit_type_init_code(__pyx_mstatetype *__pyx_mstate) {
  __Pyx_RefNannyDeclarations
  CYTHON_UNUSED_VAR(__pyx_mstate);
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("__Pyx_modinit_type_init_code", 0);
  /*--- Type init code ---*/
  #if CYTHON_USE_TYPE_SPECS
  __pyx_mstate->__pyx_ptype_24unicorn_binance_rest_api_7manager___pyx_defaults = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_24unicorn_binance_rest_api_7manager___pyx_defaults_spec, NULL); if (unlikely(!__pyx_mstate->__pyx_ptype_24unicorn_binance_rest_api_7manager___pyx_defaults)) __PYX_ERR(0, 418, __pyx_L1_error)
  if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_24unicorn_binance_rest_api_7manager___pyx_defaults_spec, __pyx_mstate->__pyx_ptype_24unicorn_binance_rest_api_7manager___pyx_defaults) < 0) __PYX_ERR(0, 418, __pyx_L1_error)
  #else
  __pyx_mstate->__pyx_ptype_24unicorn_binance_rest_api_7manager___pyx_defaults = &__pyx_type_24unicorn_binance_rest_api_7manager___pyx_defaults;
  #endif
  #if !CYTHON_COMPILING_IN_LIMITED_API
  #endif
  #if !CYTHON_USE_TYPE_SPECS
  if (__Pyx_PyType_Ready(__pyx_mstate->__pyx_ptype_24unicorn_binance_rest_api_7manager___pyx_defaults) < 0) __PYX_ERR(0, 418, __pyx_L1_error)
  #endif
  #if !CYTHON_COMPILING_IN_LIMITED_API
  if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_mstate->__pyx_ptype_24unicorn_binance_rest_api_7manager___pyx_defaults->tp_dictoffset && __pyx_mstate->__pyx_ptype_24unicorn_binance_rest_api_7manager___pyx_defaults->tp_getattro == PyObject_GenericGetAttr)) {
    __pyx_mstate->__pyx_ptype_24unicorn_binance_rest_api_7manager___pyx_defaults->tp_getattro = PyObject_GenericGetAttr;
  }
  #endif
  #if CYTHON_USE_TYPE_SPECS
  __pyx_mstate->__pyx_ptype_24unicorn_binance_rest_api_7manager___pyx_scope_struct__genexpr = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_24unicorn_binance_rest_api_7manager___pyx_scope_struct__genexpr_spec, NULL); if (unlikely(!__pyx_mstate->__pyx_ptype_24unicorn_binance_rest_api_7manager___pyx_scope_struct__genexpr)) __PYX_ERR(0, 529, __pyx_L1_error)
  if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_24unicorn_binance_rest_api_7manager___pyx_scope_struct__genexpr_spec, __pyx_mstate->__pyx_ptype_24unicorn_binance_rest_api_7manager___pyx_scope_struct__genexpr) < 0) __PYX_ERR(0, 529, __pyx_L1_error)
  #else
  __pyx_mstate->__pyx_ptype_24unicorn_binance_rest_api_7manager___pyx_scope_struct__genexpr = &__pyx_type_24unicorn_binance_rest_api_7manager___pyx_scope_struct__genexpr;
  #endif
  #if !CYTHON_COMPILING_IN_LIMITED_API
  #endif
  #if !CYTHON_USE_TYPE_SPECS
  if (__Pyx_PyType_Ready(__pyx_mstate->__pyx_ptype_24unicorn_binance_rest_api_7manager___pyx_scope_struct__genexpr) < 0) __PYX_ERR(0, 529, __pyx_L1_error)
  #endif
  #if !CYTHON_COMPILING_IN_LIMITED_API
  if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_mstate->__pyx_ptype_24unicorn_binance_rest_api_7manager___pyx_scope_struct__genexpr->tp_dictoffset && __pyx_mstate->__pyx_ptype_24unicorn_binance_rest_api_7manager___pyx_scope_struct__genexpr->tp_getattro == PyObject_GenericGetAttr)) {
    __pyx_mstate->__pyx_ptype_24unicorn_binance_rest_api_7manager___pyx_scope_struct__genexpr->tp_getattro = PyObject_GenericGetAttr;
  }
  #endif
  #if CYTHON_USE_TYPE_SPECS
  __pyx_mstate->__pyx_ptype_24unicorn_binance_rest_api_7manager___pyx_scope_struct_1_aggregate_trade_iter = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_24unicorn_binance_rest_api_7manager___pyx_scope_struct_1_aggregate_trade_iter_spec, NULL); if (unlikely(!__pyx_mstate->__pyx_ptype_24unicorn_binance_rest_api_7manager___pyx_scope_struct_1_aggregate_trade_iter)) __PYX_ERR(0, 1058, __pyx_L1_error)
  if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_24unicorn_binance_rest_api_7manager___pyx_scope_struct_1_aggregate_trade_iter_spec, __pyx_mstate->__pyx_ptype_24unicorn_binance_rest_api_7manager___pyx_scope_struct_1_aggregate_trade_iter) < 0) __PYX_ERR(0, 1058, __pyx_L1_error)
  #else
  __pyx_mstate->__pyx_ptype_24unicorn_binance_rest_api_7manager___pyx_scope_struct_1_aggregate_trade_iter = &__pyx_type_24unicorn_binance_rest_api_7manager___pyx_scope_struct_1_aggregate_trade_iter;
  #endif
  #if !CYTHON_COMPILING_IN_LIMITED_API
  #endif
  #if !CYTHON_USE_TYPE_SPECS
  if (__Pyx_PyType_Ready(__pyx_mstate->__pyx_ptype_24unicorn_binance_rest_api_7manager___pyx_scope_struct_1_aggregate_trade_iter) < 0) __PYX_ERR(0, 1058, __pyx_L1_error)
  #endif
  #if !CYTHON_COMPILING_IN_LIMITED_API
  if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_mstate->__pyx_ptype_24unicorn_binance_rest_api_7manager___pyx_scope_struct_1_aggregate_trade_iter->tp_dictoffset && __pyx_mstate->__pyx_ptype_24unicorn_binance_rest_api_7manager___pyx_scope_struct_1_aggregate_trade_iter->tp_getattro == PyObject_GenericGetAttr)) {
    __pyx_mstate->__pyx_ptype_24unicorn_binance_rest_api_7manager___pyx_scope_struct_1_aggregate_trade_iter->tp_getattro = PyObject_GenericGetAttr;
  }
  #endif
  #if CYTHON_USE_TYPE_SPECS
  __pyx_mstate->__pyx_ptype_24unicorn_binance_rest_api_7manager___pyx_scope_struct_2_get_historical_klines_generator = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_24unicorn_binance_rest_api_7manager___pyx_scope_struct_2_get_historical_klines_generator_spec, NULL); if (unlikely(!__pyx_mstate->__pyx_ptype_24unicorn_binance_rest_api_7manager___pyx_scope_struct_2_get_historical_klines_generator)) __PYX_ERR(0, 1295, __pyx_L1_error)
  if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_24unicorn_binance_rest_api_7manager___pyx_scope_struct_2_get_historical_klines_generator_spec, __pyx_mstate->__pyx_ptype_24unicorn_binance_rest_api_7manager___pyx_scope_struct_2_get_historical_klines_generator) < 0) __PYX_ERR(0, 1295, __pyx_L1_error)
  #else
  __pyx_mstate->__pyx_ptype_24unicorn_binance_rest_api_7manager___pyx_scope_struct_2_get_historical_klines_generator = &__pyx_type_24unicorn_binance_rest_api_7manager___pyx_scope_struct_2_get_historical_klines_generator;
  #endif
  #if !CYTHON_COMPILING_IN_LIMITED_API
  #endif
  #if !CYTHON_USE_TYPE_SPECS
  if (__Pyx_PyType_Ready(__pyx_mstate->__pyx_ptype_24unicorn_binance_rest_api_7manager___pyx_scope_struct_2_get_historical_klines_generator) < 0) __PYX_ERR(0, 1295, __pyx_L1_error)
  #endif
  #if !CYTHON_COMPILING_IN_LIMITED_API
  if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_mstate->__pyx_ptype_24unicorn_binance_rest_api_7manager___pyx_scope_struct_2_get_historical_klines_generator->tp_dictoffset && __pyx_mstate->__pyx_ptype_24unicorn_binance_rest_api_7manager___pyx_scope_struct_2_get_historical_klines_generator->tp_getattro == PyObject_GenericGetAttr)) {
    __pyx_mstate->__pyx_ptype_24unicorn_binance_rest_api_7manager___pyx_scope_struct_2_get_historical_klines_generator->tp_getattro = PyObject_GenericGetAttr;
  }
  #endif
  __Pyx_RefNannyFinishContext();
  return 0;
  __pyx_L1_error:;
  __Pyx_RefNannyFinishContext();
  return -1;
}

static int __Pyx_modinit_type_import_code(__pyx_mstatetype *__pyx_mstate) {
  __Pyx_RefNannyDeclarations
  CYTHON_UNUSED_VAR(__pyx_mstate);
  __Pyx_RefNannySetupContext("__Pyx_modinit_type_import_code", 0);
  /*--- Type import code ---*/
  __Pyx_RefNannyFinishContext();
  return 0;
}

static int __Pyx_modinit_variable_import_code(__pyx_mstatetype *__pyx_mstate) {
  __Pyx_RefNannyDeclarations
  CYTHON_UNUSED_VAR(__pyx_mstate);
  __Pyx_RefNannySetupContext("__Pyx_modinit_variable_import_code", 0);
  /*--- Variable import code ---*/
  __Pyx_RefNannyFinishContext();
  return 0;
}

static int __Pyx_modinit_function_import_code(__pyx_mstatetype *__pyx_mstate) {
  __Pyx_RefNannyDeclarations
  CYTHON_UNUSED_VAR(__pyx_mstate);
  __Pyx_RefNannySetupContext("__Pyx_modinit_function_import_code", 0);
  /*--- Function import code ---*/
  __Pyx_RefNannyFinishContext();
  return 0;
}

#if CYTHON_PEP489_MULTI_PHASE_INIT
static PyObject* __pyx_pymod_create(PyObject *spec, PyModuleDef *def); /*proto*/
static int __pyx_pymod_exec_manager(PyObject* module); /*proto*/
static PyModuleDef_Slot __pyx_moduledef_slots[] = {
  {Py_mod_create, (void*)__pyx_pymod_create},
  {Py_mod_exec, (void*)__pyx_pymod_exec_manager},
  #if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING
  {Py_mod_gil, Py_MOD_GIL_USED},
  #endif
  #if PY_VERSION_HEX >= 0x030C0000 && CYTHON_USE_MODULE_STATE
  {Py_mod_multiple_interpreters, Py_MOD_MULTIPLE_INTERPRETERS_NOT_SUPPORTED},
  #endif
  {0, NULL}
};
#endif

#ifdef __cplusplus
namespace {
  struct PyModuleDef __pyx_moduledef =
  #else
  static struct PyModuleDef __pyx_moduledef =
  #endif
  {
      PyModuleDef_HEAD_INIT,
      "manager",
      0, /* m_doc */
    #if CYTHON_USE_MODULE_STATE
      sizeof(__pyx_mstatetype), /* m_size */
    #else
      (CYTHON_PEP489_MULTI_PHASE_INIT) ? 0 : -1, /* m_size */
    #endif
      __pyx_methods /* m_methods */,
    #if CYTHON_PEP489_MULTI_PHASE_INIT
      __pyx_moduledef_slots, /* m_slots */
    #else
      NULL, /* m_reload */
    #endif
    #if CYTHON_USE_MODULE_STATE
      __pyx_m_traverse, /* m_traverse */
      __pyx_m_clear, /* m_clear */
      NULL /* m_free */
    #else
      NULL, /* m_traverse */
      NULL, /* m_clear */
      NULL /* m_free */
    #endif
  };
  #ifdef __cplusplus
} /* anonymous namespace */
#endif

/* PyModInitFuncType */
#ifndef CYTHON_NO_PYINIT_EXPORT
  #define __Pyx_PyMODINIT_FUNC PyMODINIT_FUNC
#else
  #ifdef __cplusplus
  #define __Pyx_PyMODINIT_FUNC extern "C" PyObject *
  #else
  #define __Pyx_PyMODINIT_FUNC PyObject *
  #endif
#endif

__Pyx_PyMODINIT_FUNC PyInit_manager(void) CYTHON_SMALL_CODE; /*proto*/
__Pyx_PyMODINIT_FUNC PyInit_manager(void)
#if CYTHON_PEP489_MULTI_PHASE_INIT
{
  return PyModuleDef_Init(&__pyx_moduledef);
}
/* ModuleCreationPEP489 */
#if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX < 0x03090000
static PY_INT64_T __Pyx_GetCurrentInterpreterId(void) {
    {
        PyObject *module = PyImport_ImportModule("_interpreters"); // 3.13+ I think
        if (!module) {
            PyErr_Clear(); // just try the 3.8-3.12 version
            module = PyImport_ImportModule("_xxsubinterpreters");
            if (!module) goto bad;
        }
        PyObject *current = PyObject_CallMethod(module, "get_current", NULL);
        Py_DECREF(module);
        if (!current) goto bad;
        if (PyTuple_Check(current)) {
            PyObject *new_current = PySequence_GetItem(current, 0);
            Py_DECREF(current);
            current = new_current;
            if (!new_current) goto bad;
        }
        long long as_c_int = PyLong_AsLongLong(current);
        Py_DECREF(current);
        return as_c_int;
    }
  bad:
    PySys_WriteStderr("__Pyx_GetCurrentInterpreterId failed. Try setting the C define CYTHON_PEP489_MULTI_PHASE_INIT=0\n");
    return -1;
}
#endif
#if !CYTHON_USE_MODULE_STATE
static CYTHON_SMALL_CODE int __Pyx_check_single_interpreter(void) {
    static PY_INT64_T main_interpreter_id = -1;
#if CYTHON_COMPILING_IN_GRAAL
    PY_INT64_T current_id = PyInterpreterState_GetIDFromThreadState(PyThreadState_Get());
#elif CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX >= 0x03090000
    PY_INT64_T current_id = PyInterpreterState_GetID(PyInterpreterState_Get());
#elif CYTHON_COMPILING_IN_LIMITED_API
    PY_INT64_T current_id = __Pyx_GetCurrentInterpreterId();
#else
    PY_INT64_T current_id = PyInterpreterState_GetID(PyThreadState_Get()->interp);
#endif
    if (unlikely(current_id == -1)) {
        return -1;
    }
    if (main_interpreter_id == -1) {
        main_interpreter_id = current_id;
        return 0;
    } else if (unlikely(main_interpreter_id != current_id)) {
        PyErr_SetString(
            PyExc_ImportError,
            "Interpreter change detected - this module can only be loaded into one interpreter per process.");
        return -1;
    }
    return 0;
}
#endif
static CYTHON_SMALL_CODE int __Pyx_copy_spec_to_module(PyObject *spec, PyObject *moddict, const char* from_name, const char* to_name, int allow_none)
{
    PyObject *value = PyObject_GetAttrString(spec, from_name);
    int result = 0;
    if (likely(value)) {
        if (allow_none || value != Py_None) {
            result = PyDict_SetItemString(moddict, to_name, value);
        }
        Py_DECREF(value);
    } else if (PyErr_ExceptionMatches(PyExc_AttributeError)) {
        PyErr_Clear();
    } else {
        result = -1;
    }
    return result;
}
static CYTHON_SMALL_CODE PyObject* __pyx_pymod_create(PyObject *spec, PyModuleDef *def) {
    PyObject *module = NULL, *moddict, *modname;
    CYTHON_UNUSED_VAR(def);
    #if !CYTHON_USE_MODULE_STATE
    if (__Pyx_check_single_interpreter())
        return NULL;
    #endif
    if (__pyx_m)
        return __Pyx_NewRef(__pyx_m);
    modname = PyObject_GetAttrString(spec, "name");
    if (unlikely(!modname)) goto bad;
    module = PyModule_NewObject(modname);
    Py_DECREF(modname);
    if (unlikely(!module)) goto bad;
    moddict = PyModule_GetDict(module);
    if (unlikely(!moddict)) goto bad;
    if (unlikely(__Pyx_copy_spec_to_module(spec, moddict, "loader", "__loader__", 1) < 0)) goto bad;
    if (unlikely(__Pyx_copy_spec_to_module(spec, moddict, "origin", "__file__", 1) < 0)) goto bad;
    if (unlikely(__Pyx_copy_spec_to_module(spec, moddict, "parent", "__package__", 1) < 0)) goto bad;
    if (unlikely(__Pyx_copy_spec_to_module(spec, moddict, "submodule_search_locations", "__path__", 0) < 0)) goto bad;
    return module;
bad:
    Py_XDECREF(module);
    return NULL;
}


static CYTHON_SMALL_CODE int __pyx_pymod_exec_manager(PyObject *__pyx_pyinit_module)
#endif
{
  int stringtab_initialized = 0;
  #if CYTHON_USE_MODULE_STATE
  int pystate_addmodule_run = 0;
  #endif
  __pyx_mstatetype *__pyx_mstate = NULL;
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  PyObject *__pyx_t_4 = NULL;
  PyObject *__pyx_t_5 = NULL;
  size_t __pyx_t_6;
  PyObject *__pyx_t_7 = NULL;
  PyObject *__pyx_t_8 = NULL;
  PyObject *__pyx_t_9 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannyDeclarations
  #if CYTHON_PEP489_MULTI_PHASE_INIT
  if (__pyx_m) {
    if (__pyx_m == __pyx_pyinit_module) return 0;
    PyErr_SetString(PyExc_RuntimeError, "Module 'manager' has already been imported. Re-initialisation is not supported.");
    return -1;
  }
  #else
  if (__pyx_m) return __Pyx_NewRef(__pyx_m);
  #endif
  /*--- Module creation code ---*/
  #if CYTHON_PEP489_MULTI_PHASE_INIT
  __pyx_t_1 = __pyx_pyinit_module;
  Py_INCREF(__pyx_t_1);
  #else
  __pyx_t_1 = PyModule_Create(&__pyx_moduledef); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1, __pyx_L1_error)
  #endif
  #if CYTHON_USE_MODULE_STATE
  {
    int add_module_result = __Pyx_State_AddModule(__pyx_t_1, &__pyx_moduledef);
    __pyx_t_1 = 0; /* transfer ownership from __pyx_t_1 to "manager" pseudovariable */
    if (unlikely((add_module_result < 0))) __PYX_ERR(0, 1, __pyx_L1_error)
    pystate_addmodule_run = 1;
  }
  #else
  __pyx_m = __pyx_t_1;
  #endif
  #if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING
  PyUnstable_Module_SetGIL(__pyx_m, Py_MOD_GIL_USED);
  #endif
  __pyx_mstate = __pyx_mstate_global;
  CYTHON_UNUSED_VAR(__pyx_t_1);
  __pyx_mstate->__pyx_d = PyModule_GetDict(__pyx_m); if (unlikely(!__pyx_mstate->__pyx_d)) __PYX_ERR(0, 1, __pyx_L1_error)
  Py_INCREF(__pyx_mstate->__pyx_d);
  __pyx_mstate->__pyx_b = __Pyx_PyImport_AddModuleRef(__Pyx_BUILTIN_MODULE_NAME); if (unlikely(!__pyx_mstate->__pyx_b)) __PYX_ERR(0, 1, __pyx_L1_error)
  __pyx_mstate->__pyx_cython_runtime = __Pyx_PyImport_AddModuleRef("cython_runtime"); if (unlikely(!__pyx_mstate->__pyx_cython_runtime)) __PYX_ERR(0, 1, __pyx_L1_error)
  if (PyObject_SetAttrString(__pyx_m, "__builtins__", __pyx_mstate->__pyx_b) < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  /* ImportRefnannyAPI */
  #if CYTHON_REFNANNY
__Pyx_RefNanny = __Pyx_RefNannyImportAPI("refnanny");
if (!__Pyx_RefNanny) {
  PyErr_Clear();
  __Pyx_RefNanny = __Pyx_RefNannyImportAPI("Cython.Runtime.refnanny");
  if (!__Pyx_RefNanny)
      Py_FatalError("failed to import 'refnanny' module");
}
#endif

__Pyx_RefNannySetupContext("PyInit_manager", 0);
  if (__Pyx_check_binary_version(__PYX_LIMITED_VERSION_HEX, __Pyx_get_runtime_version(), CYTHON_COMPILING_IN_LIMITED_API) < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  #ifdef __Pxy_PyFrame_Initialize_Offsets
  __Pxy_PyFrame_Initialize_Offsets();
  #endif
  __pyx_mstate->__pyx_empty_tuple = PyTuple_New(0); if (unlikely(!__pyx_mstate->__pyx_empty_tuple)) __PYX_ERR(0, 1, __pyx_L1_error)
  __pyx_mstate->__pyx_empty_bytes = PyBytes_FromStringAndSize("", 0); if (unlikely(!__pyx_mstate->__pyx_empty_bytes)) __PYX_ERR(0, 1, __pyx_L1_error)
  __pyx_mstate->__pyx_empty_unicode = PyUnicode_FromStringAndSize("", 0); if (unlikely(!__pyx_mstate->__pyx_empty_unicode)) __PYX_ERR(0, 1, __pyx_L1_error)
  /*--- Initialize various global constants etc. ---*/
  if (__Pyx_InitConstants(__pyx_mstate) < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  stringtab_initialized = 1;
  if (__Pyx_InitGlobals() < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  #if 0 || defined(__Pyx_CyFunction_USED) || defined(__Pyx_FusedFunction_USED) || defined(__Pyx_Coroutine_USED) || defined(__Pyx_Generator_USED) || defined(__Pyx_AsyncGen_USED)
  if (__pyx_CommonTypesMetaclass_init(__pyx_m) < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  #endif
  #ifdef __Pyx_CyFunction_USED
  if (__pyx_CyFunction_init(__pyx_m) < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  #endif
  #ifdef __Pyx_FusedFunction_USED
  if (__pyx_FusedFunction_init(__pyx_m) < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  #endif
  #ifdef __Pyx_Coroutine_USED
  if (__pyx_Coroutine_init(__pyx_m) < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  #endif
  #ifdef __Pyx_Generator_USED
  if (__pyx_Generator_init(__pyx_m) < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  #endif
  #ifdef __Pyx_AsyncGen_USED
  if (__pyx_AsyncGen_init(__pyx_m) < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  #endif
  /*--- Library function declarations ---*/
  if (__pyx_module_is_main_unicorn_binance_rest_api__manager) {
    if (PyObject_SetAttr(__pyx_m, __pyx_mstate_global->__pyx_n_u_name_2, __pyx_mstate_global->__pyx_n_u_main) < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  }
  {
    PyObject *modules = PyImport_GetModuleDict(); if (unlikely(!modules)) __PYX_ERR(0, 1, __pyx_L1_error)
    if (!PyDict_GetItemString(modules, "unicorn_binance_rest_api.manager")) {
      if (unlikely((PyDict_SetItemString(modules, "unicorn_binance_rest_api.manager", __pyx_m) < 0))) __PYX_ERR(0, 1, __pyx_L1_error)
    }
  }
  /*--- Builtin init code ---*/
  if (__Pyx_InitCachedBuiltins(__pyx_mstate) < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  /*--- Constants init code ---*/
  if (__Pyx_InitCachedConstants(__pyx_mstate) < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_CreateCodeObjects(__pyx_mstate) < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  /*--- Global type/function init code ---*/
  (void)__Pyx_modinit_global_init_code(__pyx_mstate);
  (void)__Pyx_modinit_variable_export_code(__pyx_mstate);
  (void)__Pyx_modinit_function_export_code(__pyx_mstate);
  if (unlikely((__Pyx_modinit_type_init_code(__pyx_mstate) < 0))) __PYX_ERR(0, 1, __pyx_L1_error)
  (void)__Pyx_modinit_type_import_code(__pyx_mstate);
  (void)__Pyx_modinit_variable_import_code(__pyx_mstate);
  (void)__Pyx_modinit_function_import_code(__pyx_mstate);
  /*--- Execution code ---*/

  /* "unicorn_binance_rest_api/manager.py":42
 * # IN THE SOFTWARE.
 * 
 * from operator import itemgetter             # <<<<<<<<<<<<<<
 * from typing import Optional
 * from urllib.parse import urlencode
*/
  __pyx_t_2 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_itemgetter); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 42, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __pyx_t_3 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_operator, __pyx_t_2, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 42, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_itemgetter); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 42, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_itemgetter, __pyx_t_2) < 0) __PYX_ERR(0, 42, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;

  /* "unicorn_binance_rest_api/manager.py":43
 * 
 * from operator import itemgetter
 * from typing import Optional             # <<<<<<<<<<<<<<
 * from urllib.parse import urlencode
 * from .helpers import date_to_milliseconds, interval_to_milliseconds
*/
  __pyx_t_3 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_Optional); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 43, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __pyx_t_2 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_typing, __pyx_t_3, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 43, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  __pyx_t_3 = __Pyx_ImportFrom(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_Optional); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 43, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_Optional, __pyx_t_3) < 0) __PYX_ERR(0, 43, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "unicorn_binance_rest_api/manager.py":44
 * from operator import itemgetter
 * from typing import Optional
 * from urllib.parse import urlencode             # <<<<<<<<<<<<<<
 * from .helpers import date_to_milliseconds, interval_to_milliseconds
 * from .exceptions import *
*/
  __pyx_t_2 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_urlencode); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 44, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __pyx_t_3 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_urllib_parse, __pyx_t_2, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 44, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_urlencode); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 44, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_urlencode, __pyx_t_2) < 0) __PYX_ERR(0, 44, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;

  /* "unicorn_binance_rest_api/manager.py":45
 * from typing import Optional
 * from urllib.parse import urlencode
 * from .helpers import date_to_milliseconds, interval_to_milliseconds             # <<<<<<<<<<<<<<
 * from .exceptions import *
 * 
*/
  __pyx_t_3 = __Pyx_PyList_Pack(2, __pyx_mstate_global->__pyx_n_u_date_to_milliseconds, __pyx_mstate_global->__pyx_n_u_interval_to_milliseconds); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 45, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __pyx_t_2 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_helpers, __pyx_t_3, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 45, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  __pyx_t_3 = __Pyx_ImportFrom(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_date_to_milliseconds); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 45, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_date_to_milliseconds, __pyx_t_3) < 0) __PYX_ERR(0, 45, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  __pyx_t_3 = __Pyx_ImportFrom(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_interval_to_milliseconds); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 45, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_interval_to_milliseconds, __pyx_t_3) < 0) __PYX_ERR(0, 45, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "unicorn_binance_rest_api/manager.py":46
 * from urllib.parse import urlencode
 * from .helpers import date_to_milliseconds, interval_to_milliseconds
 * from .exceptions import *             # <<<<<<<<<<<<<<
 * 
 * import colorama
*/
  __pyx_t_2 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u__12); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 46, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __pyx_t_3 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_exceptions, __pyx_t_2, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 46, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  if (__pyx_import_star(__pyx_t_3) < 0) __PYX_ERR(0, 46, __pyx_L1_error);
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;

  /* "unicorn_binance_rest_api/manager.py":48
 * from .exceptions import *
 * 
 * import colorama             # <<<<<<<<<<<<<<
 * import cython
 * import datetime
*/
  __pyx_t_3 = __Pyx_ImportDottedModule(__pyx_mstate_global->__pyx_n_u_colorama, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 48, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_colorama, __pyx_t_3) < 0) __PYX_ERR(0, 48, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;

  /* "unicorn_binance_rest_api/manager.py":50
 * import colorama
 * import cython
 * import datetime             # <<<<<<<<<<<<<<
 * import hashlib
 * import hmac
*/
  __pyx_t_3 = __Pyx_ImportDottedModule(__pyx_mstate_global->__pyx_n_u_datetime, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 50, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_datetime, __pyx_t_3) < 0) __PYX_ERR(0, 50, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;

  /* "unicorn_binance_rest_api/manager.py":51
 * import cython
 * import datetime
 * import hashlib             # <<<<<<<<<<<<<<
 * import hmac
 * import logging
*/
  __pyx_t_3 = __Pyx_ImportDottedModule(__pyx_mstate_global->__pyx_n_u_hashlib, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 51, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_hashlib, __pyx_t_3) < 0) __PYX_ERR(0, 51, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;

  /* "unicorn_binance_rest_api/manager.py":52
 * import datetime
 * import hashlib
 * import hmac             # <<<<<<<<<<<<<<
 * import logging
 * import requests
*/
  __pyx_t_3 = __Pyx_ImportDottedModule(__pyx_mstate_global->__pyx_n_u_hmac, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 52, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_hmac, __pyx_t_3) < 0) __PYX_ERR(0, 52, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;

  /* "unicorn_binance_rest_api/manager.py":53
 * import hashlib
 * import hmac
 * import logging             # <<<<<<<<<<<<<<
 * import requests
 * import platform
*/
  __pyx_t_3 = __Pyx_ImportDottedModule(__pyx_mstate_global->__pyx_n_u_logging, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 53, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_logging, __pyx_t_3) < 0) __PYX_ERR(0, 53, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;

  /* "unicorn_binance_rest_api/manager.py":54
 * import hmac
 * import logging
 * import requests             # <<<<<<<<<<<<<<
 * import platform
 * import time
*/
  __pyx_t_3 = __Pyx_ImportDottedModule(__pyx_mstate_global->__pyx_n_u_requests, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 54, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_requests, __pyx_t_3) < 0) __PYX_ERR(0, 54, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;

  /* "unicorn_binance_rest_api/manager.py":55
 * import logging
 * import requests
 * import platform             # <<<<<<<<<<<<<<
 * import time
 * 
*/
  __pyx_t_3 = __Pyx_ImportDottedModule(__pyx_mstate_global->__pyx_n_u_platform, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 55, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_platform, __pyx_t_3) < 0) __PYX_ERR(0, 55, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;

  /* "unicorn_binance_rest_api/manager.py":56
 * import requests
 * import platform
 * import time             # <<<<<<<<<<<<<<
 * 
 * 
*/
  __pyx_t_3 = __Pyx_ImportDottedModule(__pyx_mstate_global->__pyx_n_u_time, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 56, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_time, __pyx_t_3) < 0) __PYX_ERR(0, 56, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;

  /* "unicorn_binance_rest_api/manager.py":59
 * 
 * 
 * __app_name__: str = "unicorn-binance-rest-api"             # <<<<<<<<<<<<<<
 * __version__: str = "2.8.0"
 * __logger__: logging.getLogger = logging.getLogger("unicorn_binance_rest_api")
*/
  if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_app_name, __pyx_mstate_global->__pyx_kp_u_unicorn_binance_rest_api) < 0) __PYX_ERR(0, 59, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":60
 * 
 * __app_name__: str = "unicorn-binance-rest-api"
 * __version__: str = "2.8.0"             # <<<<<<<<<<<<<<
 * __logger__: logging.getLogger = logging.getLogger("unicorn_binance_rest_api")
 * 
*/
  if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_version, __pyx_mstate_global->__pyx_kp_u_2_8_0) < 0) __PYX_ERR(0, 60, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":61
 * __app_name__: str = "unicorn-binance-rest-api"
 * __version__: str = "2.8.0"
 * __logger__: logging.getLogger = logging.getLogger("unicorn_binance_rest_api")             # <<<<<<<<<<<<<<
 * 
 * logger = __logger__
*/
  __pyx_t_2 = NULL;
  __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_logging); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 61, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_getLogger); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 61, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
  __pyx_t_6 = 1;
  {
    PyObject *__pyx_callargs[2] = {__pyx_t_2, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_2};
    __pyx_t_3 = __Pyx_PyObject_FastCall(__pyx_t_5, __pyx_callargs+__pyx_t_6, (2-__pyx_t_6) | (__pyx_t_6*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 61, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
  }
  if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_logger_2, __pyx_t_3) < 0) __PYX_ERR(0, 61, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;

  /* "unicorn_binance_rest_api/manager.py":63
 * __logger__: logging.getLogger = logging.getLogger("unicorn_binance_rest_api")
 * 
 * logger = __logger__             # <<<<<<<<<<<<<<
 * 
 * 
*/
  __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_logger_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 63, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_logger, __pyx_t_3) < 0) __PYX_ERR(0, 63, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;

  /* "unicorn_binance_rest_api/manager.py":66
 * 
 * 
 * class BinanceRestApiManager(object):             # <<<<<<<<<<<<<<
 *     """
 *     A Python SDK to use the Binance REST API`s (com+testnet, com-margin+testnet, com-isolated_margin+testnet,
*/
  __pyx_t_3 = __Pyx_PEP560_update_bases(__pyx_mstate_global->__pyx_tuple[156]); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 66, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __pyx_t_5 = __Pyx_CalculateMetaclass(NULL, __pyx_t_3); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 66, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __pyx_t_2 = __Pyx_Py3MetaclassPrepare(__pyx_t_5, __pyx_t_3, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager, (PyObject *) NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_kp_u_A_Python_SDK_to_use_the_Binance); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 66, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (__pyx_t_3 != __pyx_mstate_global->__pyx_tuple[156]) {
    if (unlikely((PyDict_SetItemString(__pyx_t_2, "__orig_bases__", __pyx_mstate_global->__pyx_tuple[156]) < 0))) __PYX_ERR(0, 66, __pyx_L1_error)
  }

  /* "unicorn_binance_rest_api/manager.py":111
 *     """
 * 
 *     API_URL = 'https://api.binance.{}/api'             # <<<<<<<<<<<<<<
 *     MARGIN_API_URL = 'https://api.binance.{}/sapi'
 *     WEBSITE_URL = 'https://www.binance.{}'
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_API_URL, __pyx_mstate_global->__pyx_kp_u_https_api_binance_api) < 0) __PYX_ERR(0, 111, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":112
 * 
 *     API_URL = 'https://api.binance.{}/api'
 *     MARGIN_API_URL = 'https://api.binance.{}/sapi'             # <<<<<<<<<<<<<<
 *     WEBSITE_URL = 'https://www.binance.{}'
 *     FUTURES_URL = 'https://fapi.binance.{}/fapi'
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_MARGIN_API_URL, __pyx_mstate_global->__pyx_kp_u_https_api_binance_sapi) < 0) __PYX_ERR(0, 112, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":113
 *     API_URL = 'https://api.binance.{}/api'
 *     MARGIN_API_URL = 'https://api.binance.{}/sapi'
 *     WEBSITE_URL = 'https://www.binance.{}'             # <<<<<<<<<<<<<<
 *     FUTURES_URL = 'https://fapi.binance.{}/fapi'
 *     FUTURES_DATA_URL = 'https://fapi.binance.{}/futures/data'
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_WEBSITE_URL, __pyx_mstate_global->__pyx_kp_u_https_www_binance) < 0) __PYX_ERR(0, 113, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":114
 *     MARGIN_API_URL = 'https://api.binance.{}/sapi'
 *     WEBSITE_URL = 'https://www.binance.{}'
 *     FUTURES_URL = 'https://fapi.binance.{}/fapi'             # <<<<<<<<<<<<<<
 *     FUTURES_DATA_URL = 'https://fapi.binance.{}/futures/data'
 *     FUTURES_COIN_URL = "https://fapi.binance.{}/fapi"
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_FUTURES_URL, __pyx_mstate_global->__pyx_kp_u_https_fapi_binance_fapi) < 0) __PYX_ERR(0, 114, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":115
 *     WEBSITE_URL = 'https://www.binance.{}'
 *     FUTURES_URL = 'https://fapi.binance.{}/fapi'
 *     FUTURES_DATA_URL = 'https://fapi.binance.{}/futures/data'             # <<<<<<<<<<<<<<
 *     FUTURES_COIN_URL = "https://fapi.binance.{}/fapi"
 *     FUTURES_COIN_DATA_URL = "https://dapi.binance.{}/futures/data"
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_FUTURES_DATA_URL, __pyx_mstate_global->__pyx_kp_u_https_fapi_binance_futures_data) < 0) __PYX_ERR(0, 115, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":116
 *     FUTURES_URL = 'https://fapi.binance.{}/fapi'
 *     FUTURES_DATA_URL = 'https://fapi.binance.{}/futures/data'
 *     FUTURES_COIN_URL = "https://fapi.binance.{}/fapi"             # <<<<<<<<<<<<<<
 *     FUTURES_COIN_DATA_URL = "https://dapi.binance.{}/futures/data"
 *     PUBLIC_API_VERSION = 'v1'
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_FUTURES_COIN_URL, __pyx_mstate_global->__pyx_kp_u_https_fapi_binance_fapi) < 0) __PYX_ERR(0, 116, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":117
 *     FUTURES_DATA_URL = 'https://fapi.binance.{}/futures/data'
 *     FUTURES_COIN_URL = "https://fapi.binance.{}/fapi"
 *     FUTURES_COIN_DATA_URL = "https://dapi.binance.{}/futures/data"             # <<<<<<<<<<<<<<
 *     PUBLIC_API_VERSION = 'v1'
 *     PRIVATE_API_VERSION = 'v3'
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_FUTURES_COIN_DATA_URL, __pyx_mstate_global->__pyx_kp_u_https_dapi_binance_futures_data) < 0) __PYX_ERR(0, 117, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":118
 *     FUTURES_COIN_URL = "https://fapi.binance.{}/fapi"
 *     FUTURES_COIN_DATA_URL = "https://dapi.binance.{}/futures/data"
 *     PUBLIC_API_VERSION = 'v1'             # <<<<<<<<<<<<<<
 *     PRIVATE_API_VERSION = 'v3'
 *     MARGIN_API_VERSION = 'v1'
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_PUBLIC_API_VERSION, __pyx_mstate_global->__pyx_n_u_v1) < 0) __PYX_ERR(0, 118, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":119
 *     FUTURES_COIN_DATA_URL = "https://dapi.binance.{}/futures/data"
 *     PUBLIC_API_VERSION = 'v1'
 *     PRIVATE_API_VERSION = 'v3'             # <<<<<<<<<<<<<<
 *     MARGIN_API_VERSION = 'v1'
 *     FUTURES_API_VERSION = 'v1'
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_PRIVATE_API_VERSION, __pyx_mstate_global->__pyx_n_u_v3) < 0) __PYX_ERR(0, 119, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":120
 *     PUBLIC_API_VERSION = 'v1'
 *     PRIVATE_API_VERSION = 'v3'
 *     MARGIN_API_VERSION = 'v1'             # <<<<<<<<<<<<<<
 *     FUTURES_API_VERSION = 'v1'
 *     FUTURES_API_VERSION2 = "v2"
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_MARGIN_API_VERSION, __pyx_mstate_global->__pyx_n_u_v1) < 0) __PYX_ERR(0, 120, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":121
 *     PRIVATE_API_VERSION = 'v3'
 *     MARGIN_API_VERSION = 'v1'
 *     FUTURES_API_VERSION = 'v1'             # <<<<<<<<<<<<<<
 *     FUTURES_API_VERSION2 = "v2"
 * 
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_FUTURES_API_VERSION, __pyx_mstate_global->__pyx_n_u_v1) < 0) __PYX_ERR(0, 121, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":122
 *     MARGIN_API_VERSION = 'v1'
 *     FUTURES_API_VERSION = 'v1'
 *     FUTURES_API_VERSION2 = "v2"             # <<<<<<<<<<<<<<
 * 
 *     SYMBOL_TYPE_SPOT = 'SPOT'
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_FUTURES_API_VERSION2, __pyx_mstate_global->__pyx_n_u_v2) < 0) __PYX_ERR(0, 122, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":124
 *     FUTURES_API_VERSION2 = "v2"
 * 
 *     SYMBOL_TYPE_SPOT = 'SPOT'             # <<<<<<<<<<<<<<
 * 
 *     ORDER_STATUS_NEW = 'NEW'
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_SYMBOL_TYPE_SPOT, __pyx_mstate_global->__pyx_n_u_SPOT) < 0) __PYX_ERR(0, 124, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":126
 *     SYMBOL_TYPE_SPOT = 'SPOT'
 * 
 *     ORDER_STATUS_NEW = 'NEW'             # <<<<<<<<<<<<<<
 *     ORDER_STATUS_PARTIALLY_FILLED = 'PARTIALLY_FILLED'
 *     ORDER_STATUS_FILLED = 'FILLED'
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_ORDER_STATUS_NEW, __pyx_mstate_global->__pyx_n_u_NEW) < 0) __PYX_ERR(0, 126, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":127
 * 
 *     ORDER_STATUS_NEW = 'NEW'
 *     ORDER_STATUS_PARTIALLY_FILLED = 'PARTIALLY_FILLED'             # <<<<<<<<<<<<<<
 *     ORDER_STATUS_FILLED = 'FILLED'
 *     ORDER_STATUS_CANCELED = 'CANCELED'
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_ORDER_STATUS_PARTIALLY_FILLED, __pyx_mstate_global->__pyx_n_u_PARTIALLY_FILLED) < 0) __PYX_ERR(0, 127, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":128
 *     ORDER_STATUS_NEW = 'NEW'
 *     ORDER_STATUS_PARTIALLY_FILLED = 'PARTIALLY_FILLED'
 *     ORDER_STATUS_FILLED = 'FILLED'             # <<<<<<<<<<<<<<
 *     ORDER_STATUS_CANCELED = 'CANCELED'
 *     ORDER_STATUS_PENDING_CANCEL = 'PENDING_CANCEL'
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_ORDER_STATUS_FILLED, __pyx_mstate_global->__pyx_n_u_FILLED) < 0) __PYX_ERR(0, 128, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":129
 *     ORDER_STATUS_PARTIALLY_FILLED = 'PARTIALLY_FILLED'
 *     ORDER_STATUS_FILLED = 'FILLED'
 *     ORDER_STATUS_CANCELED = 'CANCELED'             # <<<<<<<<<<<<<<
 *     ORDER_STATUS_PENDING_CANCEL = 'PENDING_CANCEL'
 *     ORDER_STATUS_REJECTED = 'REJECTED'
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_ORDER_STATUS_CANCELED, __pyx_mstate_global->__pyx_n_u_CANCELED) < 0) __PYX_ERR(0, 129, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":130
 *     ORDER_STATUS_FILLED = 'FILLED'
 *     ORDER_STATUS_CANCELED = 'CANCELED'
 *     ORDER_STATUS_PENDING_CANCEL = 'PENDING_CANCEL'             # <<<<<<<<<<<<<<
 *     ORDER_STATUS_REJECTED = 'REJECTED'
 *     ORDER_STATUS_EXPIRED = 'EXPIRED'
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_ORDER_STATUS_PENDING_CANCEL, __pyx_mstate_global->__pyx_n_u_PENDING_CANCEL) < 0) __PYX_ERR(0, 130, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":131
 *     ORDER_STATUS_CANCELED = 'CANCELED'
 *     ORDER_STATUS_PENDING_CANCEL = 'PENDING_CANCEL'
 *     ORDER_STATUS_REJECTED = 'REJECTED'             # <<<<<<<<<<<<<<
 *     ORDER_STATUS_EXPIRED = 'EXPIRED'
 * 
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_ORDER_STATUS_REJECTED, __pyx_mstate_global->__pyx_n_u_REJECTED) < 0) __PYX_ERR(0, 131, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":132
 *     ORDER_STATUS_PENDING_CANCEL = 'PENDING_CANCEL'
 *     ORDER_STATUS_REJECTED = 'REJECTED'
 *     ORDER_STATUS_EXPIRED = 'EXPIRED'             # <<<<<<<<<<<<<<
 * 
 *     KLINE_INTERVAL_1SECOND = '1s'
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_ORDER_STATUS_EXPIRED, __pyx_mstate_global->__pyx_n_u_EXPIRED) < 0) __PYX_ERR(0, 132, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":134
 *     ORDER_STATUS_EXPIRED = 'EXPIRED'
 * 
 *     KLINE_INTERVAL_1SECOND = '1s'             # <<<<<<<<<<<<<<
 *     KLINE_INTERVAL_1MINUTE = '1m'
 *     KLINE_INTERVAL_3MINUTE = '3m'
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_KLINE_INTERVAL_1SECOND, __pyx_mstate_global->__pyx_kp_u_1s) < 0) __PYX_ERR(0, 134, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":135
 * 
 *     KLINE_INTERVAL_1SECOND = '1s'
 *     KLINE_INTERVAL_1MINUTE = '1m'             # <<<<<<<<<<<<<<
 *     KLINE_INTERVAL_3MINUTE = '3m'
 *     KLINE_INTERVAL_5MINUTE = '5m'
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_KLINE_INTERVAL_1MINUTE, __pyx_mstate_global->__pyx_kp_u_1m) < 0) __PYX_ERR(0, 135, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":136
 *     KLINE_INTERVAL_1SECOND = '1s'
 *     KLINE_INTERVAL_1MINUTE = '1m'
 *     KLINE_INTERVAL_3MINUTE = '3m'             # <<<<<<<<<<<<<<
 *     KLINE_INTERVAL_5MINUTE = '5m'
 *     KLINE_INTERVAL_15MINUTE = '15m'
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_KLINE_INTERVAL_3MINUTE, __pyx_mstate_global->__pyx_kp_u_3m) < 0) __PYX_ERR(0, 136, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":137
 *     KLINE_INTERVAL_1MINUTE = '1m'
 *     KLINE_INTERVAL_3MINUTE = '3m'
 *     KLINE_INTERVAL_5MINUTE = '5m'             # <<<<<<<<<<<<<<
 *     KLINE_INTERVAL_15MINUTE = '15m'
 *     KLINE_INTERVAL_30MINUTE = '30m'
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_KLINE_INTERVAL_5MINUTE, __pyx_mstate_global->__pyx_kp_u_5m) < 0) __PYX_ERR(0, 137, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":138
 *     KLINE_INTERVAL_3MINUTE = '3m'
 *     KLINE_INTERVAL_5MINUTE = '5m'
 *     KLINE_INTERVAL_15MINUTE = '15m'             # <<<<<<<<<<<<<<
 *     KLINE_INTERVAL_30MINUTE = '30m'
 *     KLINE_INTERVAL_1HOUR = '1h'
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_KLINE_INTERVAL_15MINUTE, __pyx_mstate_global->__pyx_kp_u_15m) < 0) __PYX_ERR(0, 138, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":139
 *     KLINE_INTERVAL_5MINUTE = '5m'
 *     KLINE_INTERVAL_15MINUTE = '15m'
 *     KLINE_INTERVAL_30MINUTE = '30m'             # <<<<<<<<<<<<<<
 *     KLINE_INTERVAL_1HOUR = '1h'
 *     KLINE_INTERVAL_2HOUR = '2h'
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_KLINE_INTERVAL_30MINUTE, __pyx_mstate_global->__pyx_kp_u_30m) < 0) __PYX_ERR(0, 139, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":140
 *     KLINE_INTERVAL_15MINUTE = '15m'
 *     KLINE_INTERVAL_30MINUTE = '30m'
 *     KLINE_INTERVAL_1HOUR = '1h'             # <<<<<<<<<<<<<<
 *     KLINE_INTERVAL_2HOUR = '2h'
 *     KLINE_INTERVAL_4HOUR = '4h'
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_KLINE_INTERVAL_1HOUR, __pyx_mstate_global->__pyx_kp_u_1h) < 0) __PYX_ERR(0, 140, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":141
 *     KLINE_INTERVAL_30MINUTE = '30m'
 *     KLINE_INTERVAL_1HOUR = '1h'
 *     KLINE_INTERVAL_2HOUR = '2h'             # <<<<<<<<<<<<<<
 *     KLINE_INTERVAL_4HOUR = '4h'
 *     KLINE_INTERVAL_6HOUR = '6h'
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_KLINE_INTERVAL_2HOUR, __pyx_mstate_global->__pyx_kp_u_2h) < 0) __PYX_ERR(0, 141, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":142
 *     KLINE_INTERVAL_1HOUR = '1h'
 *     KLINE_INTERVAL_2HOUR = '2h'
 *     KLINE_INTERVAL_4HOUR = '4h'             # <<<<<<<<<<<<<<
 *     KLINE_INTERVAL_6HOUR = '6h'
 *     KLINE_INTERVAL_8HOUR = '8h'
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_KLINE_INTERVAL_4HOUR, __pyx_mstate_global->__pyx_kp_u_4h) < 0) __PYX_ERR(0, 142, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":143
 *     KLINE_INTERVAL_2HOUR = '2h'
 *     KLINE_INTERVAL_4HOUR = '4h'
 *     KLINE_INTERVAL_6HOUR = '6h'             # <<<<<<<<<<<<<<
 *     KLINE_INTERVAL_8HOUR = '8h'
 *     KLINE_INTERVAL_12HOUR = '12h'
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_KLINE_INTERVAL_6HOUR, __pyx_mstate_global->__pyx_kp_u_6h) < 0) __PYX_ERR(0, 143, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":144
 *     KLINE_INTERVAL_4HOUR = '4h'
 *     KLINE_INTERVAL_6HOUR = '6h'
 *     KLINE_INTERVAL_8HOUR = '8h'             # <<<<<<<<<<<<<<
 *     KLINE_INTERVAL_12HOUR = '12h'
 *     KLINE_INTERVAL_1DAY = '1d'
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_KLINE_INTERVAL_8HOUR, __pyx_mstate_global->__pyx_kp_u_8h) < 0) __PYX_ERR(0, 144, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":145
 *     KLINE_INTERVAL_6HOUR = '6h'
 *     KLINE_INTERVAL_8HOUR = '8h'
 *     KLINE_INTERVAL_12HOUR = '12h'             # <<<<<<<<<<<<<<
 *     KLINE_INTERVAL_1DAY = '1d'
 *     KLINE_INTERVAL_3DAY = '3d'
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_KLINE_INTERVAL_12HOUR, __pyx_mstate_global->__pyx_kp_u_12h) < 0) __PYX_ERR(0, 145, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":146
 *     KLINE_INTERVAL_8HOUR = '8h'
 *     KLINE_INTERVAL_12HOUR = '12h'
 *     KLINE_INTERVAL_1DAY = '1d'             # <<<<<<<<<<<<<<
 *     KLINE_INTERVAL_3DAY = '3d'
 *     KLINE_INTERVAL_1WEEK = '1w'
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_KLINE_INTERVAL_1DAY, __pyx_mstate_global->__pyx_kp_u_1d) < 0) __PYX_ERR(0, 146, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":147
 *     KLINE_INTERVAL_12HOUR = '12h'
 *     KLINE_INTERVAL_1DAY = '1d'
 *     KLINE_INTERVAL_3DAY = '3d'             # <<<<<<<<<<<<<<
 *     KLINE_INTERVAL_1WEEK = '1w'
 *     KLINE_INTERVAL_1MONTH = '1M'
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_KLINE_INTERVAL_3DAY, __pyx_mstate_global->__pyx_kp_u_3d) < 0) __PYX_ERR(0, 147, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":148
 *     KLINE_INTERVAL_1DAY = '1d'
 *     KLINE_INTERVAL_3DAY = '3d'
 *     KLINE_INTERVAL_1WEEK = '1w'             # <<<<<<<<<<<<<<
 *     KLINE_INTERVAL_1MONTH = '1M'
 * 
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_KLINE_INTERVAL_1WEEK, __pyx_mstate_global->__pyx_kp_u_1w) < 0) __PYX_ERR(0, 148, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":149
 *     KLINE_INTERVAL_3DAY = '3d'
 *     KLINE_INTERVAL_1WEEK = '1w'
 *     KLINE_INTERVAL_1MONTH = '1M'             # <<<<<<<<<<<<<<
 * 
 *     SIDE_BUY = 'BUY'
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_KLINE_INTERVAL_1MONTH, __pyx_mstate_global->__pyx_kp_u_1M) < 0) __PYX_ERR(0, 149, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":151
 *     KLINE_INTERVAL_1MONTH = '1M'
 * 
 *     SIDE_BUY = 'BUY'             # <<<<<<<<<<<<<<
 *     SIDE_SELL = 'SELL'
 * 
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_SIDE_BUY, __pyx_mstate_global->__pyx_n_u_BUY) < 0) __PYX_ERR(0, 151, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":152
 * 
 *     SIDE_BUY = 'BUY'
 *     SIDE_SELL = 'SELL'             # <<<<<<<<<<<<<<
 * 
 *     ORDER_TYPE_LIMIT = 'LIMIT'
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_SIDE_SELL, __pyx_mstate_global->__pyx_n_u_SELL) < 0) __PYX_ERR(0, 152, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":154
 *     SIDE_SELL = 'SELL'
 * 
 *     ORDER_TYPE_LIMIT = 'LIMIT'             # <<<<<<<<<<<<<<
 *     ORDER_TYPE_MARKET = 'MARKET'
 *     ORDER_TYPE_STOP_LOSS = 'STOP_LOSS'
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_ORDER_TYPE_LIMIT, __pyx_mstate_global->__pyx_n_u_LIMIT) < 0) __PYX_ERR(0, 154, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":155
 * 
 *     ORDER_TYPE_LIMIT = 'LIMIT'
 *     ORDER_TYPE_MARKET = 'MARKET'             # <<<<<<<<<<<<<<
 *     ORDER_TYPE_STOP_LOSS = 'STOP_LOSS'
 *     ORDER_TYPE_STOP_LOSS_LIMIT = 'STOP_LOSS_LIMIT'
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_ORDER_TYPE_MARKET, __pyx_mstate_global->__pyx_n_u_MARKET) < 0) __PYX_ERR(0, 155, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":156
 *     ORDER_TYPE_LIMIT = 'LIMIT'
 *     ORDER_TYPE_MARKET = 'MARKET'
 *     ORDER_TYPE_STOP_LOSS = 'STOP_LOSS'             # <<<<<<<<<<<<<<
 *     ORDER_TYPE_STOP_LOSS_LIMIT = 'STOP_LOSS_LIMIT'
 *     ORDER_TYPE_TAKE_PROFIT = 'TAKE_PROFIT'
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_ORDER_TYPE_STOP_LOSS, __pyx_mstate_global->__pyx_n_u_STOP_LOSS) < 0) __PYX_ERR(0, 156, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":157
 *     ORDER_TYPE_MARKET = 'MARKET'
 *     ORDER_TYPE_STOP_LOSS = 'STOP_LOSS'
 *     ORDER_TYPE_STOP_LOSS_LIMIT = 'STOP_LOSS_LIMIT'             # <<<<<<<<<<<<<<
 *     ORDER_TYPE_TAKE_PROFIT = 'TAKE_PROFIT'
 *     ORDER_TYPE_TAKE_PROFIT_LIMIT = 'TAKE_PROFIT_LIMIT'
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_ORDER_TYPE_STOP_LOSS_LIMIT, __pyx_mstate_global->__pyx_n_u_STOP_LOSS_LIMIT) < 0) __PYX_ERR(0, 157, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":158
 *     ORDER_TYPE_STOP_LOSS = 'STOP_LOSS'
 *     ORDER_TYPE_STOP_LOSS_LIMIT = 'STOP_LOSS_LIMIT'
 *     ORDER_TYPE_TAKE_PROFIT = 'TAKE_PROFIT'             # <<<<<<<<<<<<<<
 *     ORDER_TYPE_TAKE_PROFIT_LIMIT = 'TAKE_PROFIT_LIMIT'
 *     ORDER_TYPE_LIMIT_MAKER = 'LIMIT_MAKER'
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_ORDER_TYPE_TAKE_PROFIT, __pyx_mstate_global->__pyx_n_u_TAKE_PROFIT) < 0) __PYX_ERR(0, 158, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":159
 *     ORDER_TYPE_STOP_LOSS_LIMIT = 'STOP_LOSS_LIMIT'
 *     ORDER_TYPE_TAKE_PROFIT = 'TAKE_PROFIT'
 *     ORDER_TYPE_TAKE_PROFIT_LIMIT = 'TAKE_PROFIT_LIMIT'             # <<<<<<<<<<<<<<
 *     ORDER_TYPE_LIMIT_MAKER = 'LIMIT_MAKER'
 * 
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_ORDER_TYPE_TAKE_PROFIT_LIMIT, __pyx_mstate_global->__pyx_n_u_TAKE_PROFIT_LIMIT) < 0) __PYX_ERR(0, 159, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":160
 *     ORDER_TYPE_TAKE_PROFIT = 'TAKE_PROFIT'
 *     ORDER_TYPE_TAKE_PROFIT_LIMIT = 'TAKE_PROFIT_LIMIT'
 *     ORDER_TYPE_LIMIT_MAKER = 'LIMIT_MAKER'             # <<<<<<<<<<<<<<
 * 
 *     TIME_IN_FORCE_GTC = 'GTC'  # Good till cancelled
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_ORDER_TYPE_LIMIT_MAKER, __pyx_mstate_global->__pyx_n_u_LIMIT_MAKER) < 0) __PYX_ERR(0, 160, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":162
 *     ORDER_TYPE_LIMIT_MAKER = 'LIMIT_MAKER'
 * 
 *     TIME_IN_FORCE_GTC = 'GTC'  # Good till cancelled             # <<<<<<<<<<<<<<
 *     TIME_IN_FORCE_IOC = 'IOC'  # Immediate or cancel
 *     TIME_IN_FORCE_FOK = 'FOK'  # Fill or kill
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_TIME_IN_FORCE_GTC, __pyx_mstate_global->__pyx_n_u_GTC) < 0) __PYX_ERR(0, 162, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":163
 * 
 *     TIME_IN_FORCE_GTC = 'GTC'  # Good till cancelled
 *     TIME_IN_FORCE_IOC = 'IOC'  # Immediate or cancel             # <<<<<<<<<<<<<<
 *     TIME_IN_FORCE_FOK = 'FOK'  # Fill or kill
 * 
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_TIME_IN_FORCE_IOC, __pyx_mstate_global->__pyx_n_u_IOC) < 0) __PYX_ERR(0, 163, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":164
 *     TIME_IN_FORCE_GTC = 'GTC'  # Good till cancelled
 *     TIME_IN_FORCE_IOC = 'IOC'  # Immediate or cancel
 *     TIME_IN_FORCE_FOK = 'FOK'  # Fill or kill             # <<<<<<<<<<<<<<
 * 
 *     ORDER_RESP_TYPE_ACK = 'ACK'
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_TIME_IN_FORCE_FOK, __pyx_mstate_global->__pyx_n_u_FOK) < 0) __PYX_ERR(0, 164, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":166
 *     TIME_IN_FORCE_FOK = 'FOK'  # Fill or kill
 * 
 *     ORDER_RESP_TYPE_ACK = 'ACK'             # <<<<<<<<<<<<<<
 *     ORDER_RESP_TYPE_RESULT = 'RESULT'
 *     ORDER_RESP_TYPE_FULL = 'FULL'
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_ORDER_RESP_TYPE_ACK, __pyx_mstate_global->__pyx_n_u_ACK) < 0) __PYX_ERR(0, 166, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":167
 * 
 *     ORDER_RESP_TYPE_ACK = 'ACK'
 *     ORDER_RESP_TYPE_RESULT = 'RESULT'             # <<<<<<<<<<<<<<
 *     ORDER_RESP_TYPE_FULL = 'FULL'
 * 
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_ORDER_RESP_TYPE_RESULT, __pyx_mstate_global->__pyx_n_u_RESULT) < 0) __PYX_ERR(0, 167, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":168
 *     ORDER_RESP_TYPE_ACK = 'ACK'
 *     ORDER_RESP_TYPE_RESULT = 'RESULT'
 *     ORDER_RESP_TYPE_FULL = 'FULL'             # <<<<<<<<<<<<<<
 * 
 *     # For accessing the data returned by Client.aggregate_trades().
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_ORDER_RESP_TYPE_FULL, __pyx_mstate_global->__pyx_n_u_FULL) < 0) __PYX_ERR(0, 168, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":171
 * 
 *     # For accessing the data returned by Client.aggregate_trades().
 *     AGG_ID = 'a'             # <<<<<<<<<<<<<<
 *     AGG_PRICE = 'p'
 *     AGG_QUANTITY = 'q'
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_AGG_ID, __pyx_mstate_global->__pyx_n_u_a) < 0) __PYX_ERR(0, 171, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":172
 *     # For accessing the data returned by Client.aggregate_trades().
 *     AGG_ID = 'a'
 *     AGG_PRICE = 'p'             # <<<<<<<<<<<<<<
 *     AGG_QUANTITY = 'q'
 *     AGG_FIRST_TRADE_ID = 'f'
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_AGG_PRICE, __pyx_mstate_global->__pyx_n_u_p) < 0) __PYX_ERR(0, 172, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":173
 *     AGG_ID = 'a'
 *     AGG_PRICE = 'p'
 *     AGG_QUANTITY = 'q'             # <<<<<<<<<<<<<<
 *     AGG_FIRST_TRADE_ID = 'f'
 *     AGG_LAST_TRADE_ID = 'l'
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_AGG_QUANTITY, __pyx_mstate_global->__pyx_n_u_q) < 0) __PYX_ERR(0, 173, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":174
 *     AGG_PRICE = 'p'
 *     AGG_QUANTITY = 'q'
 *     AGG_FIRST_TRADE_ID = 'f'             # <<<<<<<<<<<<<<
 *     AGG_LAST_TRADE_ID = 'l'
 *     AGG_TIME = 'T'
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_AGG_FIRST_TRADE_ID, __pyx_mstate_global->__pyx_n_u_f) < 0) __PYX_ERR(0, 174, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":175
 *     AGG_QUANTITY = 'q'
 *     AGG_FIRST_TRADE_ID = 'f'
 *     AGG_LAST_TRADE_ID = 'l'             # <<<<<<<<<<<<<<
 *     AGG_TIME = 'T'
 *     AGG_BUYER_MAKES = 'm'
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_AGG_LAST_TRADE_ID, __pyx_mstate_global->__pyx_n_u_l) < 0) __PYX_ERR(0, 175, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":176
 *     AGG_FIRST_TRADE_ID = 'f'
 *     AGG_LAST_TRADE_ID = 'l'
 *     AGG_TIME = 'T'             # <<<<<<<<<<<<<<
 *     AGG_BUYER_MAKES = 'm'
 *     AGG_BEST_MATCH = 'M'
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_AGG_TIME, __pyx_mstate_global->__pyx_n_u_T) < 0) __PYX_ERR(0, 176, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":177
 *     AGG_LAST_TRADE_ID = 'l'
 *     AGG_TIME = 'T'
 *     AGG_BUYER_MAKES = 'm'             # <<<<<<<<<<<<<<
 *     AGG_BEST_MATCH = 'M'
 * 
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_AGG_BUYER_MAKES, __pyx_mstate_global->__pyx_n_u_m) < 0) __PYX_ERR(0, 177, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":178
 *     AGG_TIME = 'T'
 *     AGG_BUYER_MAKES = 'm'
 *     AGG_BEST_MATCH = 'M'             # <<<<<<<<<<<<<<
 * 
 *     # new asset transfer api enum
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_AGG_BEST_MATCH, __pyx_mstate_global->__pyx_n_u_M) < 0) __PYX_ERR(0, 178, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":181
 * 
 *     # new asset transfer api enum
 *     SPOT_TO_FIAT = "MAIN_C2C"             # <<<<<<<<<<<<<<
 *     SPOT_TO_USDT_FUTURE = "MAIN_UMFUTURE"
 *     SPOT_TO_COIN_FUTURE = "MAIN_CMFUTURE"
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_SPOT_TO_FIAT, __pyx_mstate_global->__pyx_n_u_MAIN_C2C) < 0) __PYX_ERR(0, 181, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":182
 *     # new asset transfer api enum
 *     SPOT_TO_FIAT = "MAIN_C2C"
 *     SPOT_TO_USDT_FUTURE = "MAIN_UMFUTURE"             # <<<<<<<<<<<<<<
 *     SPOT_TO_COIN_FUTURE = "MAIN_CMFUTURE"
 *     SPOT_TO_MARGIN_CROSS = "MAIN_MARGIN"
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_SPOT_TO_USDT_FUTURE, __pyx_mstate_global->__pyx_n_u_MAIN_UMFUTURE) < 0) __PYX_ERR(0, 182, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":183
 *     SPOT_TO_FIAT = "MAIN_C2C"
 *     SPOT_TO_USDT_FUTURE = "MAIN_UMFUTURE"
 *     SPOT_TO_COIN_FUTURE = "MAIN_CMFUTURE"             # <<<<<<<<<<<<<<
 *     SPOT_TO_MARGIN_CROSS = "MAIN_MARGIN"
 *     SPOT_TO_MINING = "MAIN_MINING"
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_SPOT_TO_COIN_FUTURE, __pyx_mstate_global->__pyx_n_u_MAIN_CMFUTURE) < 0) __PYX_ERR(0, 183, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":184
 *     SPOT_TO_USDT_FUTURE = "MAIN_UMFUTURE"
 *     SPOT_TO_COIN_FUTURE = "MAIN_CMFUTURE"
 *     SPOT_TO_MARGIN_CROSS = "MAIN_MARGIN"             # <<<<<<<<<<<<<<
 *     SPOT_TO_MINING = "MAIN_MINING"
 *     FIAT_TO_SPOT = "C2C_MAIN"
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_SPOT_TO_MARGIN_CROSS, __pyx_mstate_global->__pyx_n_u_MAIN_MARGIN) < 0) __PYX_ERR(0, 184, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":185
 *     SPOT_TO_COIN_FUTURE = "MAIN_CMFUTURE"
 *     SPOT_TO_MARGIN_CROSS = "MAIN_MARGIN"
 *     SPOT_TO_MINING = "MAIN_MINING"             # <<<<<<<<<<<<<<
 *     FIAT_TO_SPOT = "C2C_MAIN"
 *     FIAT_TO_USDT_FUTURE = "C2C_UMFUTURE"
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_SPOT_TO_MINING, __pyx_mstate_global->__pyx_n_u_MAIN_MINING) < 0) __PYX_ERR(0, 185, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":186
 *     SPOT_TO_MARGIN_CROSS = "MAIN_MARGIN"
 *     SPOT_TO_MINING = "MAIN_MINING"
 *     FIAT_TO_SPOT = "C2C_MAIN"             # <<<<<<<<<<<<<<
 *     FIAT_TO_USDT_FUTURE = "C2C_UMFUTURE"
 *     FIAT_TO_MINING = "C2C_MINING"
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_FIAT_TO_SPOT, __pyx_mstate_global->__pyx_n_u_C2C_MAIN) < 0) __PYX_ERR(0, 186, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":187
 *     SPOT_TO_MINING = "MAIN_MINING"
 *     FIAT_TO_SPOT = "C2C_MAIN"
 *     FIAT_TO_USDT_FUTURE = "C2C_UMFUTURE"             # <<<<<<<<<<<<<<
 *     FIAT_TO_MINING = "C2C_MINING"
 *     USDT_FUTURE_TO_SPOT = "UMFUTURE_MAIN"
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_FIAT_TO_USDT_FUTURE, __pyx_mstate_global->__pyx_n_u_C2C_UMFUTURE) < 0) __PYX_ERR(0, 187, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":188
 *     FIAT_TO_SPOT = "C2C_MAIN"
 *     FIAT_TO_USDT_FUTURE = "C2C_UMFUTURE"
 *     FIAT_TO_MINING = "C2C_MINING"             # <<<<<<<<<<<<<<
 *     USDT_FUTURE_TO_SPOT = "UMFUTURE_MAIN"
 *     USDT_FUTURE_TO_FIAT = "UMFUTURE_C2C"
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_FIAT_TO_MINING, __pyx_mstate_global->__pyx_n_u_C2C_MINING) < 0) __PYX_ERR(0, 188, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":189
 *     FIAT_TO_USDT_FUTURE = "C2C_UMFUTURE"
 *     FIAT_TO_MINING = "C2C_MINING"
 *     USDT_FUTURE_TO_SPOT = "UMFUTURE_MAIN"             # <<<<<<<<<<<<<<
 *     USDT_FUTURE_TO_FIAT = "UMFUTURE_C2C"
 *     USDT_FUTURE_TO_MARGIN_CROSS = "UMFUTURE_MARGIN"
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_USDT_FUTURE_TO_SPOT, __pyx_mstate_global->__pyx_n_u_UMFUTURE_MAIN) < 0) __PYX_ERR(0, 189, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":190
 *     FIAT_TO_MINING = "C2C_MINING"
 *     USDT_FUTURE_TO_SPOT = "UMFUTURE_MAIN"
 *     USDT_FUTURE_TO_FIAT = "UMFUTURE_C2C"             # <<<<<<<<<<<<<<
 *     USDT_FUTURE_TO_MARGIN_CROSS = "UMFUTURE_MARGIN"
 *     COIN_FUTURE_TO_SPOT = "CMFUTURE_MAIN"
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_USDT_FUTURE_TO_FIAT, __pyx_mstate_global->__pyx_n_u_UMFUTURE_C2C) < 0) __PYX_ERR(0, 190, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":191
 *     USDT_FUTURE_TO_SPOT = "UMFUTURE_MAIN"
 *     USDT_FUTURE_TO_FIAT = "UMFUTURE_C2C"
 *     USDT_FUTURE_TO_MARGIN_CROSS = "UMFUTURE_MARGIN"             # <<<<<<<<<<<<<<
 *     COIN_FUTURE_TO_SPOT = "CMFUTURE_MAIN"
 *     MARGIN_CROSS_TO_SPOT = "MARGIN_MAIN"
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_USDT_FUTURE_TO_MARGIN_CROSS, __pyx_mstate_global->__pyx_n_u_UMFUTURE_MARGIN) < 0) __PYX_ERR(0, 191, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":192
 *     USDT_FUTURE_TO_FIAT = "UMFUTURE_C2C"
 *     USDT_FUTURE_TO_MARGIN_CROSS = "UMFUTURE_MARGIN"
 *     COIN_FUTURE_TO_SPOT = "CMFUTURE_MAIN"             # <<<<<<<<<<<<<<
 *     MARGIN_CROSS_TO_SPOT = "MARGIN_MAIN"
 *     MARGIN_CROSS_TO_USDT_FUTURE = "MARGIN_UMFUTURE"
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_COIN_FUTURE_TO_SPOT, __pyx_mstate_global->__pyx_n_u_CMFUTURE_MAIN) < 0) __PYX_ERR(0, 192, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":193
 *     USDT_FUTURE_TO_MARGIN_CROSS = "UMFUTURE_MARGIN"
 *     COIN_FUTURE_TO_SPOT = "CMFUTURE_MAIN"
 *     MARGIN_CROSS_TO_SPOT = "MARGIN_MAIN"             # <<<<<<<<<<<<<<
 *     MARGIN_CROSS_TO_USDT_FUTURE = "MARGIN_UMFUTURE"
 *     MINING_TO_SPOT = "MINING_MAIN"
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_MARGIN_CROSS_TO_SPOT, __pyx_mstate_global->__pyx_n_u_MARGIN_MAIN) < 0) __PYX_ERR(0, 193, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":194
 *     COIN_FUTURE_TO_SPOT = "CMFUTURE_MAIN"
 *     MARGIN_CROSS_TO_SPOT = "MARGIN_MAIN"
 *     MARGIN_CROSS_TO_USDT_FUTURE = "MARGIN_UMFUTURE"             # <<<<<<<<<<<<<<
 *     MINING_TO_SPOT = "MINING_MAIN"
 *     MINING_TO_USDT_FUTURE = "MINING_UMFUTURE"
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_MARGIN_CROSS_TO_USDT_FUTURE, __pyx_mstate_global->__pyx_n_u_MARGIN_UMFUTURE) < 0) __PYX_ERR(0, 194, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":195
 *     MARGIN_CROSS_TO_SPOT = "MARGIN_MAIN"
 *     MARGIN_CROSS_TO_USDT_FUTURE = "MARGIN_UMFUTURE"
 *     MINING_TO_SPOT = "MINING_MAIN"             # <<<<<<<<<<<<<<
 *     MINING_TO_USDT_FUTURE = "MINING_UMFUTURE"
 *     MINING_TO_FIAT = "MINING_C2C"
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_MINING_TO_SPOT, __pyx_mstate_global->__pyx_n_u_MINING_MAIN) < 0) __PYX_ERR(0, 195, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":196
 *     MARGIN_CROSS_TO_USDT_FUTURE = "MARGIN_UMFUTURE"
 *     MINING_TO_SPOT = "MINING_MAIN"
 *     MINING_TO_USDT_FUTURE = "MINING_UMFUTURE"             # <<<<<<<<<<<<<<
 *     MINING_TO_FIAT = "MINING_C2C"
 * 
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_MINING_TO_USDT_FUTURE, __pyx_mstate_global->__pyx_n_u_MINING_UMFUTURE) < 0) __PYX_ERR(0, 196, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":197
 *     MINING_TO_SPOT = "MINING_MAIN"
 *     MINING_TO_USDT_FUTURE = "MINING_UMFUTURE"
 *     MINING_TO_FIAT = "MINING_C2C"             # <<<<<<<<<<<<<<
 * 
 *     def __init__(self,
*/
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_MINING_TO_FIAT, __pyx_mstate_global->__pyx_n_u_MINING_C2C) < 0) __PYX_ERR(0, 197, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":199
 *     MINING_TO_FIAT = "MINING_C2C"
 * 
 *     def __init__(self,             # <<<<<<<<<<<<<<
 *                  api_key: Optional[str] = None,
 *                  api_secret: Optional[str] = None,
*/
  __pyx_t_4 = __Pyx_PyDict_NewPresized(12); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 199, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (PyDict_SetItem(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_api_key, __pyx_mstate_global->__pyx_kp_u_Optional_str) < 0) __PYX_ERR(0, 199, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_api_secret, __pyx_mstate_global->__pyx_kp_u_Optional_str) < 0) __PYX_ERR(0, 199, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_requests_params, __pyx_mstate_global->__pyx_n_u_dict) < 0) __PYX_ERR(0, 199, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_tld, __pyx_mstate_global->__pyx_kp_u_Optional_str) < 0) __PYX_ERR(0, 199, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_warn_on_update, __pyx_mstate_global->__pyx_n_u_bool) < 0) __PYX_ERR(0, 199, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_exchange, __pyx_mstate_global->__pyx_kp_u_Optional_str) < 0) __PYX_ERR(0, 199, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_disable_colorama, __pyx_mstate_global->__pyx_n_u_bool) < 0) __PYX_ERR(0, 199, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_debug, __pyx_mstate_global->__pyx_n_u_bool) < 0) __PYX_ERR(0, 199, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_socks5_proxy_server, __pyx_mstate_global->__pyx_kp_u_Optional_str) < 0) __PYX_ERR(0, 199, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_socks5_proxy_user, __pyx_mstate_global->__pyx_kp_u_Optional_str) < 0) __PYX_ERR(0, 199, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_socks5_proxy_pass, __pyx_mstate_global->__pyx_kp_u_Optional_str) < 0) __PYX_ERR(0, 199, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_socks5_proxy_ssl_verification, __pyx_mstate_global->__pyx_kp_u_Optional_bool) < 0) __PYX_ERR(0, 199, __pyx_L1_error)
  __pyx_t_7 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_1__init__, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager___init, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[3])); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 199, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_7);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_7, __pyx_mstate_global->__pyx_tuple[157]);
  __Pyx_CyFunction_SetAnnotationsDict(__pyx_t_7, __pyx_t_4);
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_init_2, __pyx_t_7) < 0) __PYX_ERR(0, 199, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;

  /* "unicorn_binance_rest_api/manager.py":397
 *                 logger.warning(update_msg)
 * 
 *     def __enter__(self):             # <<<<<<<<<<<<<<
 *         logger.debug(f"Entering with-context of BinanceRestApiManager() ...")
 *         if self.sigterm is True:
*/
  __pyx_t_7 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_3__enter__, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager___enter, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[4])); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 397, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_7);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_enter, __pyx_t_7) < 0) __PYX_ERR(0, 397, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;

  /* "unicorn_binance_rest_api/manager.py":405
 *         return self
 * 
 *     def __exit__(self, exc_type, exc_value, error_traceback):             # <<<<<<<<<<<<<<
 *         logger.debug(f"Leaving with-context of BinanceRestApiManager() ...")
 *         self.stop_manager()
*/
  __pyx_t_7 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_5__exit__, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager___exit, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[5])); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 405, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_7);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_exit, __pyx_t_7) < 0) __PYX_ERR(0, 405, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;

  /* "unicorn_binance_rest_api/manager.py":411
 *             logger.critical(f"An exception occurred: {exc_type} - {exc_value} - {error_traceback}")
 * 
 *     def _init_session(self):             # <<<<<<<<<<<<<<
 *         session = requests.session()
 *         session.headers.update({'Accept': 'application/json',
*/
  __pyx_t_7 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_7_init_session, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager__init_sess, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[6])); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 411, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_7);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_init_session, __pyx_t_7) < 0) __PYX_ERR(0, 411, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;

  /* "unicorn_binance_rest_api/manager.py":418
 *         return session
 * 
 *     def _create_api_uri(self, path, signed=True, version=PUBLIC_API_VERSION):             # <<<<<<<<<<<<<<
 *         v = self.PRIVATE_API_VERSION if signed else version
 *         return self.API_URL + '/' + v + '/' + path
*/
  __pyx_t_7 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_9_create_api_uri, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager__create_ap, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[7])); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 418, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_7);
  if (!__Pyx_CyFunction_InitDefaults(__pyx_t_7, __pyx_mstate_global->__pyx_ptype_24unicorn_binance_rest_api_7manager___pyx_defaults)) __PYX_ERR(0, 418, __pyx_L1_error)
  __pyx_t_4 = PyObject_GetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_PUBLIC_API_VERSION);
  if (unlikely(!__pyx_t_4)) {
    PyErr_Clear();
    __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_PUBLIC_API_VERSION);
  }
  if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 418, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_Defaults(struct __pyx_defaults, __pyx_t_7)->arg0 = __pyx_t_4;
  __Pyx_GIVEREF(__pyx_t_4);
  __pyx_t_4 = 0;
  __Pyx_CyFunction_SetDefaultsGetter(__pyx_t_7, __pyx_pf_24unicorn_binance_rest_api_7manager___defaults__);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_create_api_uri, __pyx_t_7) < 0) __PYX_ERR(0, 418, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;

  /* "unicorn_binance_rest_api/manager.py":422
 *         return self.API_URL + '/' + v + '/' + path
 * 
 *     def _create_margin_api_uri(self, path, version=MARGIN_API_VERSION):             # <<<<<<<<<<<<<<
 *         return self.MARGIN_API_URL + '/' + version + '/' + path
 * 
*/
  __pyx_t_7 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_11_create_margin_api_uri, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager__create_ma, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[8])); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 422, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_7);
  if (!__Pyx_CyFunction_InitDefaults(__pyx_t_7, __pyx_mstate_global->__pyx_ptype_24unicorn_binance_rest_api_7manager___pyx_defaults)) __PYX_ERR(0, 422, __pyx_L1_error)
  __pyx_t_4 = PyObject_GetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_MARGIN_API_VERSION);
  if (unlikely(!__pyx_t_4)) {
    PyErr_Clear();
    __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_MARGIN_API_VERSION);
  }
  if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 422, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_Defaults(struct __pyx_defaults, __pyx_t_7)->arg0 = __pyx_t_4;
  __Pyx_GIVEREF(__pyx_t_4);
  __pyx_t_4 = 0;
  __Pyx_CyFunction_SetDefaultsGetter(__pyx_t_7, __pyx_pf_24unicorn_binance_rest_api_7manager_2__defaults__);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_create_margin_api_uri, __pyx_t_7) < 0) __PYX_ERR(0, 422, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;

  /* "unicorn_binance_rest_api/manager.py":425
 *         return self.MARGIN_API_URL + '/' + version + '/' + path
 * 
 *     def _create_website_uri(self, path):             # <<<<<<<<<<<<<<
 *         return self.WEBSITE_URL + '/' + path
 * 
*/
  __pyx_t_7 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_13_create_website_uri, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager__create_we, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[9])); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 425, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_7);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_create_website_uri, __pyx_t_7) < 0) __PYX_ERR(0, 425, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;

  /* "unicorn_binance_rest_api/manager.py":428
 *         return self.WEBSITE_URL + '/' + path
 * 
 *     def _create_futures_api_uri(self, path: str, version: int = 1) -> str:             # <<<<<<<<<<<<<<
 *         url = self.FUTURES_URL
 *         options = {1: self.FUTURES_API_VERSION, 2: self.FUTURES_API_VERSION2}
*/
  __pyx_t_7 = __Pyx_PyDict_NewPresized(3); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 428, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_7);
  if (PyDict_SetItem(__pyx_t_7, __pyx_mstate_global->__pyx_n_u_path, __pyx_mstate_global->__pyx_n_u_str) < 0) __PYX_ERR(0, 428, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_7, __pyx_mstate_global->__pyx_n_u_version_2, __pyx_mstate_global->__pyx_n_u_int) < 0) __PYX_ERR(0, 428, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_7, __pyx_mstate_global->__pyx_n_u_return, __pyx_mstate_global->__pyx_n_u_str) < 0) __PYX_ERR(0, 428, __pyx_L1_error)
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_15_create_futures_api_uri, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager__create_fu, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[10])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 428, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_mstate_global->__pyx_tuple[158]);
  __Pyx_CyFunction_SetAnnotationsDict(__pyx_t_4, __pyx_t_7);
  __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_create_futures_api_uri, __pyx_t_4) < 0) __PYX_ERR(0, 428, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":433
 *         return url + '/' + options[version] + '/' + path
 * 
 *     def _create_futures_data_api_uri(self, path):             # <<<<<<<<<<<<<<
 *         return self.FUTURES_DATA_URL + '/' + path
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_17_create_futures_data_api_uri, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager__create_fu_2, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[11])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 433, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_create_futures_data_api_uri, __pyx_t_4) < 0) __PYX_ERR(0, 433, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":436
 *         return self.FUTURES_DATA_URL + '/' + path
 * 
 *     def _create_futures_coin_api_url(self, path: str, version: int = 1) -> str:             # <<<<<<<<<<<<<<
 *         options = {1: self.FUTURES_API_VERSION, 2: self.FUTURES_API_VERSION2}
 *         return self.FUTURES_COIN_URL + "/" + options[version] + "/" + path
*/
  __pyx_t_4 = __Pyx_PyDict_NewPresized(3); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 436, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (PyDict_SetItem(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_path, __pyx_mstate_global->__pyx_n_u_str) < 0) __PYX_ERR(0, 436, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_version_2, __pyx_mstate_global->__pyx_n_u_int) < 0) __PYX_ERR(0, 436, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_return, __pyx_mstate_global->__pyx_n_u_str) < 0) __PYX_ERR(0, 436, __pyx_L1_error)
  __pyx_t_7 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_19_create_futures_coin_api_url, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager__create_fu_3, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[12])); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 436, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_7);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_7, __pyx_mstate_global->__pyx_tuple[158]);
  __Pyx_CyFunction_SetAnnotationsDict(__pyx_t_7, __pyx_t_4);
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_create_futures_coin_api_url, __pyx_t_7) < 0) __PYX_ERR(0, 436, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;

  /* "unicorn_binance_rest_api/manager.py":440
 *         return self.FUTURES_COIN_URL + "/" + options[version] + "/" + path
 * 
 *     def _create_futures_coin_data_api_url(self, path: str, version: int = 1) -> str:             # <<<<<<<<<<<<<<
 *         url = self.FUTURES_COIN_DATA_URL
 *         options = {1: self.FUTURES_API_VERSION, 2: self.FUTURES_API_VERSION2}
*/
  __pyx_t_7 = __Pyx_PyDict_NewPresized(3); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 440, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_7);
  if (PyDict_SetItem(__pyx_t_7, __pyx_mstate_global->__pyx_n_u_path, __pyx_mstate_global->__pyx_n_u_str) < 0) __PYX_ERR(0, 440, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_7, __pyx_mstate_global->__pyx_n_u_version_2, __pyx_mstate_global->__pyx_n_u_int) < 0) __PYX_ERR(0, 440, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_7, __pyx_mstate_global->__pyx_n_u_return, __pyx_mstate_global->__pyx_n_u_str) < 0) __PYX_ERR(0, 440, __pyx_L1_error)
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_21_create_futures_coin_data_api_url, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager__create_fu_4, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[13])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 440, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_mstate_global->__pyx_tuple[158]);
  __Pyx_CyFunction_SetAnnotationsDict(__pyx_t_4, __pyx_t_7);
  __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_create_futures_coin_data_api_ur, __pyx_t_4) < 0) __PYX_ERR(0, 440, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":445
 *         return url + "/" + options[version] + "/" + path
 * 
 *     def _generate_signature(self, data):             # <<<<<<<<<<<<<<
 *         ordered_data = self._order_params(data)
 *         query_string = '&'.join(["{}={}".format(d[0], d[1]) for d in ordered_data])
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_23_generate_signature, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager__generate, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[14])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 445, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_generate_signature, __pyx_t_4) < 0) __PYX_ERR(0, 445, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":451
 *         return m.hexdigest()
 * 
 *     @staticmethod             # <<<<<<<<<<<<<<
 *     def _order_params(data):
 *         """
*/
  __pyx_t_7 = NULL;
  __Pyx_INCREF(__pyx_builtin_staticmethod);
  __pyx_t_8 = __pyx_builtin_staticmethod; 
  __pyx_t_9 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_25_order_params, __Pyx_CYFUNCTION_STATICMETHOD, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager__order_par, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[15])); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 451, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_9);
  __pyx_t_6 = 1;
  {
    PyObject *__pyx_callargs[2] = {__pyx_t_7, __pyx_t_9};
    __pyx_t_4 = __Pyx_PyObject_FastCall(__pyx_t_8, __pyx_callargs+__pyx_t_6, (2-__pyx_t_6) | (__pyx_t_6*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
    __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
    __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
    __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
    if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 451, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
  }
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_order_params, __pyx_t_4) < 0) __PYX_ERR(0, 451, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":473
 *         return params
 * 
 *     def _request(self, method, uri, signed, force_params=False, throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         if self.sigterm is True:
 *             info = f"`BinanceRestApiManager()` instance has already been stopped and cannot be used."
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_27_request, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager__request, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[16])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 473, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_mstate_global->__pyx_tuple[159]);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_request, __pyx_t_4) < 0) __PYX_ERR(0, 473, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":542
 *         return self._handle_response(throw_exception=throw_exception)
 * 
 *     def _request_api(self, method, path, signed=False, version=PUBLIC_API_VERSION, throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         uri = self._create_api_uri(path, signed, version)
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_29_request_api, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager__request_a, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[17])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 542, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (!__Pyx_CyFunction_InitDefaults(__pyx_t_4, __pyx_mstate_global->__pyx_ptype_24unicorn_binance_rest_api_7manager___pyx_defaults)) __PYX_ERR(0, 542, __pyx_L1_error)
  __pyx_t_8 = PyObject_GetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_PUBLIC_API_VERSION);
  if (unlikely(!__pyx_t_8)) {
    PyErr_Clear();
    __Pyx_GetModuleGlobalName(__pyx_t_8, __pyx_mstate_global->__pyx_n_u_PUBLIC_API_VERSION);
  }
  if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 542, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  __Pyx_CyFunction_Defaults(struct __pyx_defaults, __pyx_t_4)->arg0 = __pyx_t_8;
  __Pyx_GIVEREF(__pyx_t_8);
  __pyx_t_8 = 0;
  __Pyx_CyFunction_SetDefaultsGetter(__pyx_t_4, __pyx_pf_24unicorn_binance_rest_api_7manager_4__defaults__);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_request_api, __pyx_t_4) < 0) __PYX_ERR(0, 542, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":547
 *         return self._request(method, uri, signed, throw_exception=throw_exception, **kwargs)
 * 
 *     def _request_margin_api(self, method, path, signed=False,             # <<<<<<<<<<<<<<
 *                             version=MARGIN_API_VERSION, throw_exception=True, **kwargs):
 *         uri = self._create_margin_api_uri(path, version)
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_31_request_margin_api, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager__request_m, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[18])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 547, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (!__Pyx_CyFunction_InitDefaults(__pyx_t_4, __pyx_mstate_global->__pyx_ptype_24unicorn_binance_rest_api_7manager___pyx_defaults)) __PYX_ERR(0, 547, __pyx_L1_error)

  /* "unicorn_binance_rest_api/manager.py":548
 * 
 *     def _request_margin_api(self, method, path, signed=False,
 *                             version=MARGIN_API_VERSION, throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         uri = self._create_margin_api_uri(path, version)
 * 
*/
  __pyx_t_8 = PyObject_GetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_MARGIN_API_VERSION);
  if (unlikely(!__pyx_t_8)) {
    PyErr_Clear();
    __Pyx_GetModuleGlobalName(__pyx_t_8, __pyx_mstate_global->__pyx_n_u_MARGIN_API_VERSION);
  }
  if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 548, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  __Pyx_CyFunction_Defaults(struct __pyx_defaults, __pyx_t_4)->arg0 = __pyx_t_8;
  __Pyx_GIVEREF(__pyx_t_8);
  __pyx_t_8 = 0;
  __Pyx_CyFunction_SetDefaultsGetter(__pyx_t_4, __pyx_pf_24unicorn_binance_rest_api_7manager_6__defaults__);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_request_margin_api, __pyx_t_4) < 0) __PYX_ERR(0, 547, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":553
 *         return self._request(method, uri, signed, throw_exception=throw_exception, **kwargs)
 * 
 *     def _request_website(self, method, path, signed=False, throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         uri = self._create_website_uri(path)
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_33_request_website, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager__request_w, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[19])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 553, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_mstate_global->__pyx_tuple[159]);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_request_website, __pyx_t_4) < 0) __PYX_ERR(0, 553, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":558
 *         return self._request(method, uri, signed, throw_exception=throw_exception, **kwargs)
 * 
 *     def _request_futures_api(self, method, path, signed=False, version=1, throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         uri = self._create_futures_api_uri(path, version=version)
 *         return self._request(method, uri, signed, True, throw_exception=throw_exception, **kwargs)
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_35_request_futures_api, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager__request_f, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[20])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 558, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_mstate_global->__pyx_tuple[160]);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_request_futures_api, __pyx_t_4) < 0) __PYX_ERR(0, 558, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":562
 *         return self._request(method, uri, signed, True, throw_exception=throw_exception, **kwargs)
 * 
 *     def _request_futures_data_api(self, method, path, signed=False, throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         uri = self._create_futures_data_api_uri(path)
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_37_request_futures_data_api, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager__request_f_2, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[21])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 562, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_mstate_global->__pyx_tuple[159]);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_request_futures_data_api, __pyx_t_4) < 0) __PYX_ERR(0, 562, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":567
 *         return self._request(method, uri, signed, True, throw_exception=throw_exception, **kwargs)
 * 
 *     def _request_futures_coin_api(self, method, path, signed=False, version=1, throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         uri = self._create_futures_coin_api_url(path, version=version)
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_39_request_futures_coin_api, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager__request_f_3, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[22])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 567, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_mstate_global->__pyx_tuple[160]);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_request_futures_coin_api, __pyx_t_4) < 0) __PYX_ERR(0, 567, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":572
 *         return self._request(method, uri, signed, True, throw_exception=throw_exception, **kwargs)
 * 
 *     def _request_futures_coin_data_api(self, method, path, signed=False, version=1, throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         uri = self._create_futures_coin_data_api_url(path, version=version)
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_41_request_futures_coin_data_api, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager__request_f_4, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[23])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 572, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_mstate_global->__pyx_tuple[160]);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_request_futures_coin_data_api, __pyx_t_4) < 0) __PYX_ERR(0, 572, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":577
 *         return self._request(method, uri, signed, True, throw_exception=throw_exception, **kwargs)
 * 
 *     def _save_used_weight(self) -> bool:             # <<<<<<<<<<<<<<
 *         try:
 *             weight = self.response.headers.get('X-MBX-USED-WEIGHT')
*/
  __pyx_t_4 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 577, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (PyDict_SetItem(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_return, __pyx_mstate_global->__pyx_n_u_bool) < 0) __PYX_ERR(0, 577, __pyx_L1_error)
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_43_save_used_weight, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager__save_used_2, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[24])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 577, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  __Pyx_CyFunction_SetAnnotationsDict(__pyx_t_8, __pyx_t_4);
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_save_used_weight, __pyx_t_8) < 0) __PYX_ERR(0, 577, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":591
 *         return True
 * 
 *     def _handle_response(self, throw_exception=True):             # <<<<<<<<<<<<<<
 *         """
 *         Internal helper for handling API responses from the Binance server.
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_45_handle_response, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager__handle_re, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[25])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 591, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_8, __pyx_mstate_global->__pyx_tuple[161]);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_handle_response, __pyx_t_8) < 0) __PYX_ERR(0, 591, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":607
 *             raise BinanceRequestException('Invalid Response: %s' % self.response.text)
 * 
 *     def _get(self, path, signed=False, version=PUBLIC_API_VERSION, **kwargs):             # <<<<<<<<<<<<<<
 *         return self._request_api('get', path, signed, version, **kwargs)
 * 
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_47_get, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager__get, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[26])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 607, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (!__Pyx_CyFunction_InitDefaults(__pyx_t_8, __pyx_mstate_global->__pyx_ptype_24unicorn_binance_rest_api_7manager___pyx_defaults)) __PYX_ERR(0, 607, __pyx_L1_error)
  __pyx_t_4 = PyObject_GetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_PUBLIC_API_VERSION);
  if (unlikely(!__pyx_t_4)) {
    PyErr_Clear();
    __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_PUBLIC_API_VERSION);
  }
  if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 607, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_Defaults(struct __pyx_defaults, __pyx_t_8)->arg0 = __pyx_t_4;
  __Pyx_GIVEREF(__pyx_t_4);
  __pyx_t_4 = 0;
  __Pyx_CyFunction_SetDefaultsGetter(__pyx_t_8, __pyx_pf_24unicorn_binance_rest_api_7manager_8__defaults__);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_2, __pyx_t_8) < 0) __PYX_ERR(0, 607, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":610
 *         return self._request_api('get', path, signed, version, **kwargs)
 * 
 *     def _post(self, path, signed=False, version=PUBLIC_API_VERSION, throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         return self._request_api('post', path, signed, version, throw_exception, **kwargs)
 * 
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_49_post, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager__post, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[27])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 610, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (!__Pyx_CyFunction_InitDefaults(__pyx_t_8, __pyx_mstate_global->__pyx_ptype_24unicorn_binance_rest_api_7manager___pyx_defaults)) __PYX_ERR(0, 610, __pyx_L1_error)
  __pyx_t_4 = PyObject_GetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_PUBLIC_API_VERSION);
  if (unlikely(!__pyx_t_4)) {
    PyErr_Clear();
    __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_PUBLIC_API_VERSION);
  }
  if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 610, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_Defaults(struct __pyx_defaults, __pyx_t_8)->arg0 = __pyx_t_4;
  __Pyx_GIVEREF(__pyx_t_4);
  __pyx_t_4 = 0;
  __Pyx_CyFunction_SetDefaultsGetter(__pyx_t_8, __pyx_pf_24unicorn_binance_rest_api_7manager_10__defaults__);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_post_2, __pyx_t_8) < 0) __PYX_ERR(0, 610, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":613
 *         return self._request_api('post', path, signed, version, throw_exception, **kwargs)
 * 
 *     def _put(self, path, signed=False, version=PUBLIC_API_VERSION, **kwargs):             # <<<<<<<<<<<<<<
 *         return self._request_api('put', path, signed, version, **kwargs)
 * 
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_51_put, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager__put, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[28])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 613, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (!__Pyx_CyFunction_InitDefaults(__pyx_t_8, __pyx_mstate_global->__pyx_ptype_24unicorn_binance_rest_api_7manager___pyx_defaults)) __PYX_ERR(0, 613, __pyx_L1_error)
  __pyx_t_4 = PyObject_GetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_PUBLIC_API_VERSION);
  if (unlikely(!__pyx_t_4)) {
    PyErr_Clear();
    __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_PUBLIC_API_VERSION);
  }
  if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 613, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_Defaults(struct __pyx_defaults, __pyx_t_8)->arg0 = __pyx_t_4;
  __Pyx_GIVEREF(__pyx_t_4);
  __pyx_t_4 = 0;
  __Pyx_CyFunction_SetDefaultsGetter(__pyx_t_8, __pyx_pf_24unicorn_binance_rest_api_7manager_12__defaults__);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_put_2, __pyx_t_8) < 0) __PYX_ERR(0, 613, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":616
 *         return self._request_api('put', path, signed, version, **kwargs)
 * 
 *     def _delete(self, path, signed=False, version=PUBLIC_API_VERSION, **kwargs):             # <<<<<<<<<<<<<<
 *         return self._request_api('delete', path, signed, version, **kwargs)
 * 
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_53_delete, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager__delete, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[29])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 616, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (!__Pyx_CyFunction_InitDefaults(__pyx_t_8, __pyx_mstate_global->__pyx_ptype_24unicorn_binance_rest_api_7manager___pyx_defaults)) __PYX_ERR(0, 616, __pyx_L1_error)
  __pyx_t_4 = PyObject_GetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_PUBLIC_API_VERSION);
  if (unlikely(!__pyx_t_4)) {
    PyErr_Clear();
    __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_PUBLIC_API_VERSION);
  }
  if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 616, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_Defaults(struct __pyx_defaults, __pyx_t_8)->arg0 = __pyx_t_4;
  __Pyx_GIVEREF(__pyx_t_4);
  __pyx_t_4 = 0;
  __Pyx_CyFunction_SetDefaultsGetter(__pyx_t_8, __pyx_pf_24unicorn_binance_rest_api_7manager_14__defaults__);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_delete_2, __pyx_t_8) < 0) __PYX_ERR(0, 616, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":619
 *         return self._request_api('delete', path, signed, version, **kwargs)
 * 
 *     def is_update_availabe(self):             # <<<<<<<<<<<<<<
 *         """
 *         Is a new release of this package available?
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_55is_update_availabe, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_is_update, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[30])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 619, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_is_update_availabe, __pyx_t_8) < 0) __PYX_ERR(0, 619, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":635
 *             return True
 * 
 *     def get_version(self):             # <<<<<<<<<<<<<<
 *         """
 *         Get the package/module version
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_57get_version, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_versio, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[31])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 635, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_version, __pyx_t_8) < 0) __PYX_ERR(0, 635, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":643
 *         return self.version
 * 
 *     def get_latest_version(self) -> Optional[str]:             # <<<<<<<<<<<<<<
 *         """
 *         Get the version of the latest available release (cache time 1 hour)
*/
  __pyx_t_8 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 643, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (PyDict_SetItem(__pyx_t_8, __pyx_mstate_global->__pyx_n_u_return, __pyx_mstate_global->__pyx_kp_u_Optional_str) < 0) __PYX_ERR(0, 643, __pyx_L1_error)
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_59get_latest_version, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_latest_2, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[32])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 643, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetAnnotationsDict(__pyx_t_4, __pyx_t_8);
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_latest_version, __pyx_t_4) < 0) __PYX_ERR(0, 643, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":660
 *             return "unknown"
 * 
 *     def get_latest_release_info(self):             # <<<<<<<<<<<<<<
 *         """
 *         Get infos about the latest available release
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_61get_latest_release_info, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_latest_3, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[33])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 660, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_latest_release_info, __pyx_t_4) < 0) __PYX_ERR(0, 660, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":680
 *             return False
 * 
 *     def get_user_agent(self):             # <<<<<<<<<<<<<<
 *         """
 *         Get the user_agent string "lib name + lib version + python version"
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_63get_user_agent, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_user_a, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[34])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 680, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_user_agent, __pyx_t_4) < 0) __PYX_ERR(0, 680, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":690
 * 
 *     # Exchange Endpoints
 *     def get_products(self):             # <<<<<<<<<<<<<<
 *         """
 *         Return list of products currently listed on Binance
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_65get_products, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_produc, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[35])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 690, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_products, __pyx_t_4) < 0) __PYX_ERR(0, 690, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":704
 *         return products
 * 
 *     def get_exchange_info(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Return rate limits and list of symbols
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_67get_exchange_info, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_exchan, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[36])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 704, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_exchange_info, __pyx_t_4) < 0) __PYX_ERR(0, 704, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":769
 *         return self._get('exchangeInfo', version=self.PRIVATE_API_VERSION, data=params)
 * 
 *     def get_symbol_info(self, symbol):             # <<<<<<<<<<<<<<
 *         """
 *         Return information about a symbol
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_69get_symbol_info, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_symbol, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[37])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 769, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_symbol_info, __pyx_t_4) < 0) __PYX_ERR(0, 769, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":821
 *     # General Endpoints
 * 
 *     def ping(self):             # <<<<<<<<<<<<<<
 *         """
 *         Test connectivity to the Rest API.
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_71ping, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_ping, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[38])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 821, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_ping, __pyx_t_4) < 0) __PYX_ERR(0, 821, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":838
 *         return self._get('ping', version=self.PRIVATE_API_VERSION)
 * 
 *     def get_server_time(self):             # <<<<<<<<<<<<<<
 *         """
 *         Test connectivity to the Rest API and get the current server time.
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_73get_server_time, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_server, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[39])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 838, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_server_time, __pyx_t_4) < 0) __PYX_ERR(0, 838, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":859
 *     # Market Data Endpoints
 * 
 *     def get_all_tickers(self):             # <<<<<<<<<<<<<<
 *         """
 *         Latest price for all symbols.
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_75get_all_tickers, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_all_ti, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[40])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 859, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_all_tickers, __pyx_t_4) < 0) __PYX_ERR(0, 859, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":885
 *         return self._get('ticker/price', version=self.PRIVATE_API_VERSION)
 * 
 *     def get_orderbook_tickers(self):             # <<<<<<<<<<<<<<
 *         """
 *         Best price/qty on the order book for all symbols.
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_77get_orderbook_tickers, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_orderb, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[41])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 885, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_orderbook_tickers, __pyx_t_4) < 0) __PYX_ERR(0, 885, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":917
 *         return self._get('ticker/bookTicker', version=self.PRIVATE_API_VERSION)
 * 
 *     def get_order_book(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get the Order Book for the market
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_79get_order_book, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_order, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[42])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 917, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_order_book, __pyx_t_4) < 0) __PYX_ERR(0, 917, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":955
 *         return self._get('depth', data=params, version=self.PRIVATE_API_VERSION)
 * 
 *     def get_recent_trades(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get recent trades (up to last 500).
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_81get_recent_trades, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_recent, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[43])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 955, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_recent_trades, __pyx_t_4) < 0) __PYX_ERR(0, 955, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":986
 *         return self._get('trades', data=params)
 * 
 *     def get_historical_trades(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get older trades.
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_83get_historical_trades, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_histor_2, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[44])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 986, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_historical_trades, __pyx_t_4) < 0) __PYX_ERR(0, 986, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":1019
 *         return self._get('historicalTrades', data=params, version=self.PRIVATE_API_VERSION)
 * 
 *     def get_aggregate_trades(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get compressed, aggregate trades. Trades that fill at the time,
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_85get_aggregate_trades, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_aggreg, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[45])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1019, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_aggregate_trades, __pyx_t_4) < 0) __PYX_ERR(0, 1019, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":1058
 *         return self._get('aggTrades', data=params, version=self.PRIVATE_API_VERSION)
 * 
 *     def aggregate_trade_iter(self, symbol, start_str=None, last_id=None):             # <<<<<<<<<<<<<<
 *         """
 *         Iterate over aggregate trade data from (start_time or last_id) to
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_87aggregate_trade_iter, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_aggregate, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[1])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1058, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_mstate_global->__pyx_tuple[162]);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_aggregate_trade_iter, __pyx_t_4) < 0) __PYX_ERR(0, 1058, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":1147
 *             last_id = trades[-1][self.AGG_ID]
 * 
 *     def get_klines(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Kline/candlestick bars for a symbol. Klines are uniquely identified by their open time.
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_90get_klines, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_klines, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[46])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1147, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_klines, __pyx_t_4) < 0) __PYX_ERR(0, 1147, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":1190
 *         return self._get('klines', data=params, version=self.PRIVATE_API_VERSION)
 * 
 *     def _get_earliest_valid_timestamp(self, symbol, interval):             # <<<<<<<<<<<<<<
 *         """
 *         Get the earliest valid open timestamp from Binance
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_92_get_earliest_valid_timestamp, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager__get_earli, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[47])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1190, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_earliest_valid_timestamp, __pyx_t_4) < 0) __PYX_ERR(0, 1190, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":1211
 *         return kline[0][0]
 * 
 *     def get_historical_klines(self, symbol, interval, start_str, end_str=None,             # <<<<<<<<<<<<<<
 *                               limit=500):
 *         """
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_94get_historical_klines, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_histor_3, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[48])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1211, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_mstate_global->__pyx_tuple[163]);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_historical_klines, __pyx_t_4) < 0) __PYX_ERR(0, 1211, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":1295
 *         return output_data
 * 
 *     def get_historical_klines_generator(self, symbol, interval, start_str, end_str=None):             # <<<<<<<<<<<<<<
 *         """
 *         Get Historical Klines from Binance
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_96get_historical_klines_generator, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_histor, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[2])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1295, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_mstate_global->__pyx_tuple[164]);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_historical_klines_generator, __pyx_t_4) < 0) __PYX_ERR(0, 1295, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":1376
 *                 time.sleep(1)
 * 
 *     def get_avg_price(self, **params):             # <<<<<<<<<<<<<<
 *         """Current average price for a symbol.
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_99get_avg_price, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_avg_pr, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[49])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1376, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_avg_price, __pyx_t_4) < 0) __PYX_ERR(0, 1376, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":1395
 *         return self._get('avgPrice', data=params, version=self.PRIVATE_API_VERSION)
 * 
 *     def get_ticker(self, **params):             # <<<<<<<<<<<<<<
 *         """24 hour price change statistics.
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_101get_ticker, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_ticker, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[50])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1395, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_ticker, __pyx_t_4) < 0) __PYX_ERR(0, 1395, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":1456
 *         return self._get('ticker/24hr', data=params, version=self.PRIVATE_API_VERSION)
 * 
 *     def get_symbol_ticker(self, **params):             # <<<<<<<<<<<<<<
 *         """Latest price for a symbol or symbols.
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_103get_symbol_ticker, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_symbol_2, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[51])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1456, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_symbol_ticker, __pyx_t_4) < 0) __PYX_ERR(0, 1456, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":1493
 *         return self._get('ticker/price', data=params, version=self.PRIVATE_API_VERSION)
 * 
 *     def get_orderbook_ticker(self, **params):             # <<<<<<<<<<<<<<
 *         """Latest price for a symbol or symbols.
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_105get_orderbook_ticker, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_orderb_2, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[52])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1493, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_orderbook_ticker, __pyx_t_4) < 0) __PYX_ERR(0, 1493, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":1541
 *     # Account Endpoints
 * 
 *     def create_order(self, **params):             # <<<<<<<<<<<<<<
 *         """Send in a new order
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_107create_order, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_create_ord, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[53])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1541, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_create_order, __pyx_t_4) < 0) __PYX_ERR(0, 1541, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":1659
 *         return self._post('order', True, data=params)
 * 
 *     def order_limit(self, timeInForce=TIME_IN_FORCE_GTC, **params):             # <<<<<<<<<<<<<<
 *         """Send in a new limit order
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_109order_limit, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_order_limi, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[54])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1659, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (!__Pyx_CyFunction_InitDefaults(__pyx_t_4, __pyx_mstate_global->__pyx_ptype_24unicorn_binance_rest_api_7manager___pyx_defaults)) __PYX_ERR(0, 1659, __pyx_L1_error)
  __pyx_t_8 = PyObject_GetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_TIME_IN_FORCE_GTC);
  if (unlikely(!__pyx_t_8)) {
    PyErr_Clear();
    __Pyx_GetModuleGlobalName(__pyx_t_8, __pyx_mstate_global->__pyx_n_u_TIME_IN_FORCE_GTC);
  }
  if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1659, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  __Pyx_CyFunction_Defaults(struct __pyx_defaults, __pyx_t_4)->arg0 = __pyx_t_8;
  __Pyx_GIVEREF(__pyx_t_8);
  __pyx_t_8 = 0;
  __Pyx_CyFunction_SetDefaultsGetter(__pyx_t_4, __pyx_pf_24unicorn_binance_rest_api_7manager_16__defaults__);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_order_limit, __pyx_t_4) < 0) __PYX_ERR(0, 1659, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":1698
 *         return self.create_order(**params)
 * 
 *     def order_limit_buy(self, timeInForce=TIME_IN_FORCE_GTC, **params):             # <<<<<<<<<<<<<<
 *         """Send in a new limit buy order
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_111order_limit_buy, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_order_limi_2, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[55])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1698, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (!__Pyx_CyFunction_InitDefaults(__pyx_t_4, __pyx_mstate_global->__pyx_ptype_24unicorn_binance_rest_api_7manager___pyx_defaults)) __PYX_ERR(0, 1698, __pyx_L1_error)
  __pyx_t_8 = PyObject_GetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_TIME_IN_FORCE_GTC);
  if (unlikely(!__pyx_t_8)) {
    PyErr_Clear();
    __Pyx_GetModuleGlobalName(__pyx_t_8, __pyx_mstate_global->__pyx_n_u_TIME_IN_FORCE_GTC);
  }
  if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1698, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  __Pyx_CyFunction_Defaults(struct __pyx_defaults, __pyx_t_4)->arg0 = __pyx_t_8;
  __Pyx_GIVEREF(__pyx_t_8);
  __pyx_t_8 = 0;
  __Pyx_CyFunction_SetDefaultsGetter(__pyx_t_4, __pyx_pf_24unicorn_binance_rest_api_7manager_18__defaults__);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_order_limit_buy, __pyx_t_4) < 0) __PYX_ERR(0, 1698, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":1736
 *         return self.order_limit(timeInForce=timeInForce, **params)
 * 
 *     def order_limit_sell(self, timeInForce=TIME_IN_FORCE_GTC, **params):             # <<<<<<<<<<<<<<
 *         """Send in a new limit sell order
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_113order_limit_sell, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_order_limi_3, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[56])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1736, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (!__Pyx_CyFunction_InitDefaults(__pyx_t_4, __pyx_mstate_global->__pyx_ptype_24unicorn_binance_rest_api_7manager___pyx_defaults)) __PYX_ERR(0, 1736, __pyx_L1_error)
  __pyx_t_8 = PyObject_GetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_TIME_IN_FORCE_GTC);
  if (unlikely(!__pyx_t_8)) {
    PyErr_Clear();
    __Pyx_GetModuleGlobalName(__pyx_t_8, __pyx_mstate_global->__pyx_n_u_TIME_IN_FORCE_GTC);
  }
  if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1736, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  __Pyx_CyFunction_Defaults(struct __pyx_defaults, __pyx_t_4)->arg0 = __pyx_t_8;
  __Pyx_GIVEREF(__pyx_t_8);
  __pyx_t_8 = 0;
  __Pyx_CyFunction_SetDefaultsGetter(__pyx_t_4, __pyx_pf_24unicorn_binance_rest_api_7manager_20__defaults__);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_order_limit_sell, __pyx_t_4) < 0) __PYX_ERR(0, 1736, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":1772
 *         return self.order_limit(timeInForce=timeInForce, **params)
 * 
 *     def order_market(self, **params):             # <<<<<<<<<<<<<<
 *         """Send in a new market order
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_115order_market, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_order_mark, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[57])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1772, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_order_market, __pyx_t_4) < 0) __PYX_ERR(0, 1772, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":1805
 *         return self.create_order(**params)
 * 
 *     def order_market_buy(self, **params):             # <<<<<<<<<<<<<<
 *         """Send in a new market buy order
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_117order_market_buy, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_order_mark_2, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[58])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1805, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_order_market_buy, __pyx_t_4) < 0) __PYX_ERR(0, 1805, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":1835
 *         return self.order_market(**params)
 * 
 *     def order_market_sell(self, **params):             # <<<<<<<<<<<<<<
 *         """Send in a new market sell order
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_119order_market_sell, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_order_mark_3, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[59])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1835, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_order_market_sell, __pyx_t_4) < 0) __PYX_ERR(0, 1835, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":1865
 *         return self.order_market(**params)
 * 
 *     def create_oco_order(self, **params):             # <<<<<<<<<<<<<<
 *         """Send in a new OCO order
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_121create_oco_order, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_create_oco, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[60])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1865, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_create_oco_order, __pyx_t_4) < 0) __PYX_ERR(0, 1865, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":1929
 *         return self._post('order/oco', True, data=params)
 * 
 *     def order_oco_buy(self, **params):             # <<<<<<<<<<<<<<
 *         """Send in a new OCO buy order
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_123order_oco_buy, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_order_oco, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[61])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1929, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_order_oco_buy, __pyx_t_4) < 0) __PYX_ERR(0, 1929, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":1973
 *         return self.create_oco_order(**params)
 * 
 *     def order_oco_sell(self, **params):             # <<<<<<<<<<<<<<
 *         """Send in a new OCO sell order
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_125order_oco_sell, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_order_oco_2, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[62])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1973, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_order_oco_sell, __pyx_t_4) < 0) __PYX_ERR(0, 1973, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":2016
 *         return self.create_oco_order(**params)
 * 
 *     def create_test_order(self, **params):             # <<<<<<<<<<<<<<
 *         """Test new order creation and signature/recvWindow long. Creates and validates a new order but does not send
 *         it into the matching engine.
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_127create_test_order, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_create_tes, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[63])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 2016, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_create_test_order, __pyx_t_4) < 0) __PYX_ERR(0, 2016, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":2057
 *         return self._post('order/test', True, data=params)
 * 
 *     def get_order(self, **params):             # <<<<<<<<<<<<<<
 *         """Check an order's status. Either orderId or origClientOrderId must be sent.
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_129get_order, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_order_2, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[64])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 2057, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_order, __pyx_t_4) < 0) __PYX_ERR(0, 2057, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":2096
 *         return self._get('order', True, data=params)
 * 
 *     def get_all_orders(self, **params):             # <<<<<<<<<<<<<<
 *         """Get all account orders; active, canceled, or filled.
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_131get_all_orders, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_all_or, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[65])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 2096, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_all_orders, __pyx_t_4) < 0) __PYX_ERR(0, 2096, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":2137
 *         return self._get('allOrders', True, data=params)
 * 
 *     def cancel_all_open_orders(self, **params):             # <<<<<<<<<<<<<<
 *         """Cancel all open orders of a symbol.
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_133cancel_all_open_orders, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_cancel_all, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[66])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 2137, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_cancel_all_open_orders, __pyx_t_4) < 0) __PYX_ERR(0, 2137, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":2250
 *         return self._delete('openOrders', True, data=params)
 * 
 *     def cancel_all_open_margin_orders(self, **params):             # <<<<<<<<<<<<<<
 *         """Cancel all open margin orders of a symbol.
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_135cancel_all_open_margin_orders, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_cancel_all_2, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[67])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 2250, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_cancel_all_open_margin_orders, __pyx_t_4) < 0) __PYX_ERR(0, 2250, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":2359
 *         return self._request_margin_api('delete', 'margin/openOrders', signed=True, data=params)
 * 
 *     def cancel_order(self, **params):             # <<<<<<<<<<<<<<
 *         """Cancel an active order. Either orderId or origClientOrderId must be sent.
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_137cancel_order, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_cancel_ord, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[68])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 2359, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_cancel_order, __pyx_t_4) < 0) __PYX_ERR(0, 2359, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":2391
 *         return self._delete('order', True, data=params)
 * 
 *     def get_open_orders(self, **params):             # <<<<<<<<<<<<<<
 *         """Get all open orders on a symbol.
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_139get_open_orders, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_open_o, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[69])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 2391, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_open_orders, __pyx_t_4) < 0) __PYX_ERR(0, 2391, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":2429
 * 
 *     # User Stream Endpoints
 *     def get_account(self, **params):             # <<<<<<<<<<<<<<
 *         """Get current account information.
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_141get_account, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_accoun, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[70])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 2429, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_account, __pyx_t_4) < 0) __PYX_ERR(0, 2429, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":2468
 *         return self._get('account', True, data=params)
 * 
 *     def get_asset_balance(self, asset, **params):             # <<<<<<<<<<<<<<
 *         """Get current asset balance.
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_143get_asset_balance, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_asset, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[71])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 2468, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_asset_balance, __pyx_t_4) < 0) __PYX_ERR(0, 2468, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":2499
 *         return None
 * 
 *     def get_my_trades(self, **params):             # <<<<<<<<<<<<<<
 *         """Get trades for a specific symbol.
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_145get_my_trades, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_my_tra, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[72])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 2499, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_my_trades, __pyx_t_4) < 0) __PYX_ERR(0, 2499, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":2536
 *         return self._get('myTrades', True, data=params)
 * 
 *     def get_system_status(self):             # <<<<<<<<<<<<<<
 *         """Get system status detail.
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_147get_system_status, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_system, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[73])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 2536, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_system_status, __pyx_t_4) < 0) __PYX_ERR(0, 2536, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":2555
 *         return self._request_margin_api('get', 'system/status')
 * 
 *     def get_account_status(self, **params):             # <<<<<<<<<<<<<<
 *         """Get account status detail.
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_149get_account_status, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_accoun_2, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[74])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 2555, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_account_status, __pyx_t_4) < 0) __PYX_ERR(0, 2555, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":2579
 *         return res
 * 
 *     def get_account_api_trading_status(self, **params):             # <<<<<<<<<<<<<<
 *         r"""Fetch account api trading status detail.
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_151get_account_api_trading_status, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_accoun_3, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[75])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 2579, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_account_api_trading_status, __pyx_t_4) < 0) __PYX_ERR(0, 2579, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":2654
 *         return res
 * 
 *     def get_dust_log(self, **params):             # <<<<<<<<<<<<<<
 *         """Get log of small amounts exchanged for BNB.
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_153get_dust_log, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_dust_l, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[76])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 2654, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_dust_log, __pyx_t_4) < 0) __PYX_ERR(0, 2654, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":2731
 *         return res
 * 
 *     def transfer_dust(self, **params):             # <<<<<<<<<<<<<<
 *         """Convert dust assets to BNB.
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_155transfer_dust, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_transfer_d, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[77])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 2731, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_transfer_dust, __pyx_t_4) < 0) __PYX_ERR(0, 2731, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":2770
 *         return self._request_margin_api('post', 'asset/dust', True, data=params)
 * 
 *     def get_asset_dividend_history(self, **params):             # <<<<<<<<<<<<<<
 *         """Query asset dividend record.
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_157get_asset_dividend_history, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_asset_2, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[78])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 2770, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_asset_dividend_history, __pyx_t_4) < 0) __PYX_ERR(0, 2770, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":2818
 *         return self._request_margin_api('get', 'asset/assetDividend', True, data=params)
 * 
 *     def query_universal_transfer_history(self, **params):             # <<<<<<<<<<<<<<
 *         """Query User Universal Transfer History
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_159query_universal_transfer_history, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_query_univ, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[79])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 2818, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_query_universal_transfer_history, __pyx_t_4) < 0) __PYX_ERR(0, 2818, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":2873
 *         return self._request_margin_api('get', 'asset/transfer', signed=True, data=params)
 * 
 *     def get_trade_fee(self, **params):             # <<<<<<<<<<<<<<
 *         """Get trade fee.
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_161get_trade_fee, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_trade, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[80])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 2873, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_trade_fee, __pyx_t_4) < 0) __PYX_ERR(0, 2873, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":2908
 *         return res
 * 
 *     def get_asset_details(self, **params):             # <<<<<<<<<<<<<<
 *         """Fetch details on assets.
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_163get_asset_details, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_asset_3, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[81])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 2908, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_asset_details, __pyx_t_4) < 0) __PYX_ERR(0, 2908, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":2949
 *     # Withdraw Endpoints
 * 
 *     def withdraw(self, **params):             # <<<<<<<<<<<<<<
 *         """Submit a withdraw request.
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_165withdraw, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_withdraw, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[82])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 2949, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_withdraw, __pyx_t_4) < 0) __PYX_ERR(0, 2949, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":2998
 *         return res
 * 
 *     def get_deposit_history(self, **params):             # <<<<<<<<<<<<<<
 *         """Fetch deposit history.
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_167get_deposit_history, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_deposi, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[83])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 2998, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_deposit_history, __pyx_t_4) < 0) __PYX_ERR(0, 2998, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":3054
 *         return self._request_margin_api('get', 'capital/deposit/hisrec', True, data=params)
 * 
 *     def get_withdraw_history(self, **params):             # <<<<<<<<<<<<<<
 *         """Fetch withdraw history.
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_169get_withdraw_history, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_withdr, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[84])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3054, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_withdraw_history, __pyx_t_4) < 0) __PYX_ERR(0, 3054, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":3110
 *         return self._request_margin_api('get', 'capital/withdraw/history', True, data=params)
 * 
 *     def get_withdraw_history_id(self, withdraw_id, **params):             # <<<<<<<<<<<<<<
 *         """Fetch withdraw history.
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_171get_withdraw_history_id, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_withdr_2, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[85])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3110, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_withdraw_history_id, __pyx_t_4) < 0) __PYX_ERR(0, 3110, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":3156
 *         raise Exception("There is no entry with withdraw id", result)
 * 
 *     def get_deposit_address(self, **params):             # <<<<<<<<<<<<<<
 *         """Fetch a deposit address for a symbol
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_173get_deposit_address, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_deposi_2, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[86])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3156, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_deposit_address, __pyx_t_4) < 0) __PYX_ERR(0, 3156, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":3186
 *     # User Stream Endpoints
 * 
 *     def stream_get_listen_key(self, output="value", throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         """Start a new user data stream and return the listen key
 *         If a stream already exists it should return the same key.
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_175stream_get_listen_key, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_stream_get, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[87])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3186, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_mstate_global->__pyx_tuple[165]);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_stream_get_listen_key, __pyx_t_4) < 0) __PYX_ERR(0, 3186, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":3220
 *             return res['listenKey']
 * 
 *     def stream_keepalive(self, listenKey, throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         """PING a user data stream to prevent a timeout.
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_177stream_keepalive, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_stream_kee, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[88])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3220, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_mstate_global->__pyx_tuple[161]);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_stream_keepalive, __pyx_t_4) < 0) __PYX_ERR(0, 3220, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":3245
 *                          throw_exception=throw_exception, **kwargs)
 * 
 *     def stream_close(self, listenKey, throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         """Close out a user data stream.
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_179stream_close, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_stream_clo, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[89])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3245, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_mstate_global->__pyx_tuple[161]);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_stream_close, __pyx_t_4) < 0) __PYX_ERR(0, 3245, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":3272
 *     # Margin Trading Endpoints
 * 
 *     def get_margin_account(self, **params):             # <<<<<<<<<<<<<<
 *         """Query cross-margin account details
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_181get_margin_account, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_margin, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[90])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3272, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_margin_account, __pyx_t_4) < 0) __PYX_ERR(0, 3272, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":3330
 *         return self._request_margin_api('get', 'margin/account', True, data=params)
 * 
 *     def get_isolated_margin_account(self, **params):             # <<<<<<<<<<<<<<
 *         """Query isolated margin account details
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_183get_isolated_margin_account, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_isolat, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[91])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3330, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_isolated_margin_account, __pyx_t_4) < 0) __PYX_ERR(0, 3330, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":3443
 *         return self._request_margin_api('get', 'margin/isolated/account', True, data=params)
 * 
 *     def get_margin_asset(self, **params):             # <<<<<<<<<<<<<<
 *         """Query cross-margin asset
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_185get_margin_asset, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_margin_2, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[92])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3443, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_margin_asset, __pyx_t_4) < 0) __PYX_ERR(0, 3443, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":3474
 *         return self._request_margin_api('get', 'margin/asset', data=params)
 * 
 *     def get_margin_symbol(self, **params):             # <<<<<<<<<<<<<<
 *         """Query cross-margin symbol info
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_187get_margin_symbol, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_margin_3, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[93])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3474, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_margin_symbol, __pyx_t_4) < 0) __PYX_ERR(0, 3474, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":3506
 *         return self._request_margin_api('get', 'margin/pair', data=params)
 * 
 *     def create_isolated_margin_account(self, **params):             # <<<<<<<<<<<<<<
 *         """Create isolated margin account for symbol
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_189create_isolated_margin_account, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_create_iso, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[94])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3506, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_create_isolated_margin_account, __pyx_t_4) < 0) __PYX_ERR(0, 3506, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":3535
 *         return self._request_margin_api('post', 'margin/isolated/create', signed=True, data=params)
 * 
 *     def get_isolated_margin_symbol(self, **params):             # <<<<<<<<<<<<<<
 *         """Query isolated margin symbol info
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_191get_isolated_margin_symbol, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_isolat_2, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[95])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3535, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_isolated_margin_symbol, __pyx_t_4) < 0) __PYX_ERR(0, 3535, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":3566
 *         return self._request_margin_api('get', 'margin/isolated/pair', signed=True, data=params)
 * 
 *     def get_all_isolated_margin_symbols(self, **params):             # <<<<<<<<<<<<<<
 *         """Query isolated margin symbol info for all pairs
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_193get_all_isolated_margin_symbols, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_all_is, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[96])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3566, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_all_isolated_margin_symbols, __pyx_t_4) < 0) __PYX_ERR(0, 3566, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":3604
 *         return self._request_margin_api('get', 'margin/isolated/allPairs', signed=True, data=params)
 * 
 *     def toggle_bnb_burn_spot_margin(self, **params):             # <<<<<<<<<<<<<<
 *         """Toggle BNB Burn On Spot Trade And Margin Interest
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_195toggle_bnb_burn_spot_margin, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_toggle_bnb, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[97])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3604, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_toggle_bnb_burn_spot_margin, __pyx_t_4) < 0) __PYX_ERR(0, 3604, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":3633
 *         return self._request_margin_api('post', 'bnbBurn', signed=True, data=params)
 * 
 *     def get_bnb_burn_spot_margin(self, **params):             # <<<<<<<<<<<<<<
 *         """Get BNB Burn Status
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_197get_bnb_burn_spot_margin, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_bnb_bu, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[98])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3633, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_bnb_burn_spot_margin, __pyx_t_4) < 0) __PYX_ERR(0, 3633, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":3657
 *         return self._request_margin_api('get', 'bnbBurn', signed=True, data=params)
 * 
 *     def get_margin_price_index(self, **params):             # <<<<<<<<<<<<<<
 *         """Query margin priceIndex
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_199get_margin_price_index, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_margin_4, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[99])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3657, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_margin_price_index, __pyx_t_4) < 0) __PYX_ERR(0, 3657, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":3684
 *         return self._request_margin_api('get', 'margin/priceIndex', data=params)
 * 
 *     def transfer_margin_to_spot(self, **params):             # <<<<<<<<<<<<<<
 *         """Execute transfer between cross-margin account and spot account.
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_201transfer_margin_to_spot, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_transfer_m, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[100])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3684, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_transfer_margin_to_spot, __pyx_t_4) < 0) __PYX_ERR(0, 3684, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":3715
 *         return self._request_margin_api('post', 'margin/transfer', signed=True, data=params)
 * 
 *     def transfer_spot_to_margin(self, **params):             # <<<<<<<<<<<<<<
 *         """Execute transfer between spot account and cross-margin account.
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_203transfer_spot_to_margin, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_transfer_s, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[101])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3715, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_transfer_spot_to_margin, __pyx_t_4) < 0) __PYX_ERR(0, 3715, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":3746
 *         return self._request_margin_api('post', 'margin/transfer', signed=True, data=params)
 * 
 *     def transfer_isolated_margin_to_spot(self, **params):             # <<<<<<<<<<<<<<
 *         """Execute transfer between isolated margin account and spot account.
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_205transfer_isolated_margin_to_spot, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_transfer_i, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[102])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3746, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_transfer_isolated_margin_to_spot, __pyx_t_4) < 0) __PYX_ERR(0, 3746, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":3781
 *         return self._request_margin_api('post', 'margin/isolated/transfer', signed=True, data=params)
 * 
 *     def transfer_spot_to_isolated_margin(self, **params):             # <<<<<<<<<<<<<<
 *         """Execute transfer between spot account and isolated margin account.
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_207transfer_spot_to_isolated_margin, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_transfer_s_2, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[103])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3781, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_transfer_spot_to_isolated_margin, __pyx_t_4) < 0) __PYX_ERR(0, 3781, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":3816
 *         return self._request_margin_api('post', 'margin/isolated/transfer', signed=True, data=params)
 * 
 *     def create_margin_loan(self, **params):             # <<<<<<<<<<<<<<
 *         """Apply for a loan in cross-margin or isolated-margin account.
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_209create_margin_loan, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_create_mar, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[104])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3816, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_create_margin_loan, __pyx_t_4) < 0) __PYX_ERR(0, 3816, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":3853
 *         return self._request_margin_api('post', 'margin/loan', signed=True, data=params)
 * 
 *     def repay_margin_loan(self, **params):             # <<<<<<<<<<<<<<
 *         """Repay loan in cross-margin or isolated-margin account.
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_211repay_margin_loan, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_repay_marg, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[105])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3853, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_repay_margin_loan, __pyx_t_4) < 0) __PYX_ERR(0, 3853, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":3893
 * 
 *     # Margin OCO
 *     def create_margin_oco_order(self, **params):             # <<<<<<<<<<<<<<
 *         """Post a new OCO trade for margin account.
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_213create_margin_oco_order, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_create_mar_2, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[106])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3893, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_create_margin_oco_order, __pyx_t_4) < 0) __PYX_ERR(0, 3893, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":4002
 *         return self._request_margin_api('post', 'margin/order/oco', signed=True, data=params)
 * 
 *     def cancel_margin_oco_order(self, **params):             # <<<<<<<<<<<<<<
 *         """Cancel an entire Order List for a margin account.
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_215cancel_margin_oco_order, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_cancel_mar, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[107])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 4002, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_cancel_margin_oco_order, __pyx_t_4) < 0) __PYX_ERR(0, 4002, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":4083
 *         return self._request_margin_api('delete', 'margin/orderList', signed=True, data=params)
 * 
 *     def get_margin_oco_order(self, **params):             # <<<<<<<<<<<<<<
 *         """ Retrieves a specific OCO based on provided optional parameters
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_217get_margin_oco_order, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_margin_5, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[108])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 4083, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_margin_oco_order, __pyx_t_4) < 0) __PYX_ERR(0, 4083, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":4129
 *         return self._request_margin_api('get', 'margin/orderList', signed=True, data=params)
 * 
 *     def get_open_margin_oco_orders(self, **params):             # <<<<<<<<<<<<<<
 *         """Retrieves open OCO trades
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_219get_open_margin_oco_orders, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_open_m, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[109])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 4129, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_open_margin_oco_orders, __pyx_t_4) < 0) __PYX_ERR(0, 4129, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":4202
 *         return self._request_margin_api('get', 'margin/allOrderList', signed=True, data=params)
 * 
 *     def create_margin_order(self, **params):             # <<<<<<<<<<<<<<
 *         """Post a new order for margin account.
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_221create_margin_order, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_create_mar_3, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[110])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 4202, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_create_margin_order, __pyx_t_4) < 0) __PYX_ERR(0, 4202, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":4323
 *         return self._request_margin_api('post', 'margin/order', signed=True, data=params)
 * 
 *     def cancel_margin_order(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Cancel an active order for margin account.
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_223cancel_margin_order, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_cancel_mar_2, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[111])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 4323, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_cancel_margin_order, __pyx_t_4) < 0) __PYX_ERR(0, 4323, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":4370
 *         return self._request_margin_api('delete', 'margin/order', signed=True, data=params)
 * 
 *     def get_margin_loan_details(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Query loan record
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_225get_margin_loan_details, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_margin_6, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[112])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 4370, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_margin_loan_details, __pyx_t_4) < 0) __PYX_ERR(0, 4370, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":4418
 *         return self._request_margin_api('get', 'margin/loan', signed=True, data=params)
 * 
 *     def get_margin_repay_details(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Query repay record
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_227get_margin_repay_details, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_margin_7, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[113])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 4418, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_margin_repay_details, __pyx_t_4) < 0) __PYX_ERR(0, 4418, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":4472
 *         return self._request_margin_api('get', 'margin/repay', signed=True, data=params)
 * 
 *     def get_margin_order(self, **params):             # <<<<<<<<<<<<<<
 *         """Query margin accounts order
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_229get_margin_order, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_margin_8, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[114])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 4472, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_margin_order, __pyx_t_4) < 0) __PYX_ERR(0, 4472, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":4520
 *         return self._request_margin_api('get', 'margin/order', signed=True, data=params)
 * 
 *     def get_open_margin_orders(self, **params):             # <<<<<<<<<<<<<<
 *         """Query margin accounts open orders
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_231get_open_margin_orders, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_open_m_2, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[115])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 4520, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_open_margin_orders, __pyx_t_4) < 0) __PYX_ERR(0, 4520, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":4570
 *         return self._request_margin_api('get', 'margin/openOrders', signed=True, data=params)
 * 
 *     def get_open_isolated_margin_orders(self, **params):             # <<<<<<<<<<<<<<
 *         """Query isolated margin accounts open orders
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_233get_open_isolated_margin_orders, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_open_i, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[116])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 4570, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_open_isolated_margin_orders, __pyx_t_4) < 0) __PYX_ERR(0, 4570, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":4620
 *         return self._request_margin_api('get', 'margin/openOrders', signed=True, data=params)
 * 
 *     def get_all_margin_orders(self, **params):             # <<<<<<<<<<<<<<
 *         """Query all margin accounts orders
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_235get_all_margin_orders, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_all_ma, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[117])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 4620, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_all_margin_orders, __pyx_t_4) < 0) __PYX_ERR(0, 4620, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":4681
 *         return self._request_margin_api('get', 'margin/allOrders', signed=True, data=params)
 * 
 *     def get_margin_trades(self, **params):             # <<<<<<<<<<<<<<
 *         """Query margin accounts trades
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_237get_margin_trades, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_margin_9, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[118])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 4681, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_margin_trades, __pyx_t_4) < 0) __PYX_ERR(0, 4681, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":4741
 *         return self._request_margin_api('get', 'margin/myTrades', signed=True, data=params)
 * 
 *     def get_max_margin_loan(self, **params):             # <<<<<<<<<<<<<<
 *         """Query max borrow amount for an asset
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_239get_max_margin_loan, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_max_ma, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[119])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 4741, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_max_margin_loan, __pyx_t_4) < 0) __PYX_ERR(0, 4741, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":4766
 *         return self._request_margin_api('get', 'margin/maxBorrowable', signed=True, data=params)
 * 
 *     def get_max_margin_transfer(self, **params):             # <<<<<<<<<<<<<<
 *         r"""
 *         Query max transfer-out amount
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_241get_max_margin_transfer, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_max_ma_2, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[120])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 4766, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_max_margin_transfer, __pyx_t_4) < 0) __PYX_ERR(0, 4766, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":4794
 *     # Cross-margin
 * 
 *     def margin_stream_get_listen_key(self, output="value", throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         """Start a new cross-margin data stream and return the listen key
 *         If a stream already exists it should return the same key.
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_243margin_stream_get_listen_key, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_margin_str, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[121])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 4794, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_mstate_global->__pyx_tuple[165]);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_margin_stream_get_listen_key, __pyx_t_4) < 0) __PYX_ERR(0, 4794, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":4828
 *             return res['listenKey']
 * 
 *     def margin_stream_keepalive(self, listenKey, throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         """PING a cross-margin data stream to prevent a timeout.
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_245margin_stream_keepalive, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_margin_str_2, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[122])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 4828, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_mstate_global->__pyx_tuple[161]);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_margin_stream_keepalive, __pyx_t_4) < 0) __PYX_ERR(0, 4828, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":4853
 *                                         throw_exception=throw_exception, **kwargs)
 * 
 *     def margin_stream_close(self, listenKey, throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         """Close out a cross-margin data stream.
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_247margin_stream_close, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_margin_str_3, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[123])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 4853, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_mstate_global->__pyx_tuple[161]);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_margin_stream_close, __pyx_t_4) < 0) __PYX_ERR(0, 4853, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":4880
 *     # Isolated margin
 * 
 *     def isolated_margin_stream_get_listen_key(self, symbol, output="value", throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         """Start a new isolated margin data stream and return the listen key
 *         If a stream already exists it should return the same key.
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_249isolated_margin_stream_get_listen_key, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_isolated_m, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[124])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 4880, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_mstate_global->__pyx_tuple[165]);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_isolated_margin_stream_get_liste, __pyx_t_4) < 0) __PYX_ERR(0, 4880, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":4920
 *             return res['listenKey']
 * 
 *     def isolated_margin_stream_keepalive(self, symbol, listenKey, throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         """PING an isolated margin data stream to prevent a timeout.
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_251isolated_margin_stream_keepalive, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_isolated_m_2, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[125])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 4920, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_mstate_global->__pyx_tuple[161]);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_isolated_margin_stream_keepalive, __pyx_t_4) < 0) __PYX_ERR(0, 4920, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":4948
 *                                         throw_exception=throw_exception, **kwargs)
 * 
 *     def isolated_margin_stream_close(self, symbol, listenKey, throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         """Close out an isolated margin data stream.
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_253isolated_margin_stream_close, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_isolated_m_3, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[126])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 4948, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_mstate_global->__pyx_tuple[161]);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_isolated_margin_stream_close, __pyx_t_4) < 0) __PYX_ERR(0, 4948, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":4978
 *     # Lending Endpoints
 * 
 *     def get_lending_product_list(self, **params):             # <<<<<<<<<<<<<<
 *         """Get Lending Product List
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_255get_lending_product_list, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_lendin, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[127])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 4978, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_lending_product_list, __pyx_t_4) < 0) __PYX_ERR(0, 4978, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":4986
 *         return self._request_margin_api('get', 'lending/daily/product/list', signed=True, data=params)
 * 
 *     def get_lending_daily_quota_left(self, **params):             # <<<<<<<<<<<<<<
 *         """Get Left Daily Purchase Quota of Flexible Product.
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_257get_lending_daily_quota_left, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_lendin_2, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[128])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 4986, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_lending_daily_quota_left, __pyx_t_4) < 0) __PYX_ERR(0, 4986, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":4994
 *         return self._request_margin_api('get', 'lending/daily/userLeftQuota', signed=True, data=params)
 * 
 *     def purchase_lending_product(self, **params):             # <<<<<<<<<<<<<<
 *         """Purchase Flexible Product
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_259purchase_lending_product, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_purchase_l, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[129])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 4994, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_purchase_lending_product, __pyx_t_4) < 0) __PYX_ERR(0, 4994, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":5002
 *         return self._request_margin_api('post', 'lending/daily/purchase', signed=True, data=params)
 * 
 *     def get_lending_daily_redemption_quota(self, **params):             # <<<<<<<<<<<<<<
 *         """Get Left Daily Redemption Quota of Flexible Product
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_261get_lending_daily_redemption_quota, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_lendin_3, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[130])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5002, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_lending_daily_redemption_quo, __pyx_t_4) < 0) __PYX_ERR(0, 5002, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":5010
 *         return self._request_margin_api('get', 'lending/daily/userRedemptionQuota', signed=True, data=params)
 * 
 *     def redeem_lending_product(self, **params):             # <<<<<<<<<<<<<<
 *         """Redeem Flexible Product
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_263redeem_lending_product, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_redeem_len, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[131])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5010, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_redeem_lending_product, __pyx_t_4) < 0) __PYX_ERR(0, 5010, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":5018
 *         return self._request_margin_api('post', 'lending/daily/redeem', signed=True, data=params)
 * 
 *     def get_lending_position(self, **params):             # <<<<<<<<<<<<<<
 *         """Get Flexible Product Position
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_265get_lending_position, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_lendin_4, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[132])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5018, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_lending_position, __pyx_t_4) < 0) __PYX_ERR(0, 5018, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":5026
 *         return self._request_margin_api('get', 'lending/daily/token/position', signed=True, data=params)
 * 
 *     def get_fixed_activity_project_list(self, **params):             # <<<<<<<<<<<<<<
 *         """Get Fixed and Activity Project List
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_267get_fixed_activity_project_list, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_fixed, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[133])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5026, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_fixed_activity_project_list, __pyx_t_4) < 0) __PYX_ERR(0, 5026, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":5076
 *         return self._request_margin_api('get', 'lending/project/list', signed=True, data=params)
 * 
 *     def get_lending_account(self, **params):             # <<<<<<<<<<<<<<
 *         """Get Lending Account Details
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_269get_lending_account, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_lendin_5, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[134])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5076, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_lending_account, __pyx_t_4) < 0) __PYX_ERR(0, 5076, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":5084
 *         return self._request_margin_api('get', 'lending/union/account', signed=True, data=params)
 * 
 *     def get_lending_purchase_history(self, **params):             # <<<<<<<<<<<<<<
 *         """Get Lending Purchase History
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_271get_lending_purchase_history, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_lendin_6, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[135])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5084, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_lending_purchase_history, __pyx_t_4) < 0) __PYX_ERR(0, 5084, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":5092
 *         return self._request_margin_api('get', 'lending/union/purchaseRecord', signed=True, data=params)
 * 
 *     def get_lending_redemption_history(self, **params):             # <<<<<<<<<<<<<<
 *         """Get Lending Redemption History
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_273get_lending_redemption_history, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_lendin_7, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[136])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5092, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_lending_redemption_history, __pyx_t_4) < 0) __PYX_ERR(0, 5092, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":5100
 *         return self._request_margin_api('get', 'lending/union/redemptionRecord', signed=True, data=params)
 * 
 *     def get_lending_interest_history(self, **params):             # <<<<<<<<<<<<<<
 *         """Get Lending Interest History
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_275get_lending_interest_history, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_lendin_8, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[137])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5100, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_lending_interest_history, __pyx_t_4) < 0) __PYX_ERR(0, 5100, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":5108
 *         return self._request_margin_api('get', 'lending/union/interestHistory', signed=True, data=params)
 * 
 *     def change_fixed_activity_to_daily_position(self, **params):             # <<<<<<<<<<<<<<
 *         """Change Fixed/Activity Position to Daily Position
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_277change_fixed_activity_to_daily_position, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_change_fix, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[138])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5108, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_change_fixed_activity_to_daily_p, __pyx_t_4) < 0) __PYX_ERR(0, 5108, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":5118
 *     # Sub Accounts
 * 
 *     def get_sub_account_list(self, **params):             # <<<<<<<<<<<<<<
 *         """Query Sub-account List.
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_279get_sub_account_list, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_sub_ac, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[139])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5118, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_sub_account_list, __pyx_t_4) < 0) __PYX_ERR(0, 5118, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":5157
 *         return self._request_margin_api('get', 'sub-account/list', True, data=params)
 * 
 *     def get_sub_account_transfer_history(self, **params):             # <<<<<<<<<<<<<<
 *         """Query Sub-account Transfer History.
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_281get_sub_account_transfer_history, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_sub_ac_2, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[140])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5157, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_sub_account_transfer_history, __pyx_t_4) < 0) __PYX_ERR(0, 5157, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":5207
 *         return self._request_margin_api('get', 'sub-account/sub/transfer/history', True, data=params)
 * 
 *     def get_sub_account_futures_transfer_history(self, **params):             # <<<<<<<<<<<<<<
 *         """Query Sub-account Futures Transfer History.
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_283get_sub_account_futures_transfer_history, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_sub_ac_3, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[141])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5207, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_sub_account_futures_transfer, __pyx_t_4) < 0) __PYX_ERR(0, 5207, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":5257
 *         return self._request_margin_api('get', 'sub-account/futures/internalTransfer', True, data=params)
 * 
 *     def create_sub_account_futures_transfer(self, **params):             # <<<<<<<<<<<<<<
 *         """Execute sub-account Futures transfer
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_285create_sub_account_futures_transfer, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_create_sub, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[142])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5257, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_create_sub_account_futures_trans, __pyx_t_4) < 0) __PYX_ERR(0, 5257, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":5289
 *         return self._request_margin_api('post', 'sub-account/futures/internalTransfer', True, data=params)
 * 
 *     def get_sub_account_assets(self, **params):             # <<<<<<<<<<<<<<
 *         """Fetch sub-account assets
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_287get_sub_account_assets, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_sub_ac_4, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[143])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5289, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_sub_account_assets, __pyx_t_4) < 0) __PYX_ERR(0, 5289, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":5338
 *         return self._request_margin_api('get', 'sub-account/assets', True, data=params, version='v3')
 * 
 *     def query_subaccount_spot_summary(self, **params):             # <<<<<<<<<<<<<<
 *         """Query Sub-account Spot Assets Summary (For Master Account)
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_289query_subaccount_spot_summary, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_query_suba, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[144])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5338, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_query_subaccount_spot_summary, __pyx_t_4) < 0) __PYX_ERR(0, 5338, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":5376
 *         return self._request_margin_api('get', 'sub-account/spotSummary', True, data=params)
 * 
 *     def get_subaccount_deposit_address(self, **params):             # <<<<<<<<<<<<<<
 *         """Get Sub-account Deposit Address (For Master Account)
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_291get_subaccount_deposit_address, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_subacc, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[145])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5376, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_subaccount_deposit_address, __pyx_t_4) < 0) __PYX_ERR(0, 5376, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":5406
 *         return self._request_margin_api('get', 'capital/deposit/subAddress', True, data=params)
 * 
 *     def get_subaccount_deposit_history(self, **params):             # <<<<<<<<<<<<<<
 *         """Get Sub-account Deposit History (For Master Account)
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_293get_subaccount_deposit_history, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_subacc_2, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[146])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5406, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_subaccount_deposit_history, __pyx_t_4) < 0) __PYX_ERR(0, 5406, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":5464
 *         return self._request_margin_api('get', 'capital/deposit/subHisrec', True, data=params)
 * 
 *     def get_subaccount_futures_margin_status(self, **params):             # <<<<<<<<<<<<<<
 *         """Get Sub-account's Status on Margin/Futures (For Master Account)
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_295get_subaccount_futures_margin_status, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_subacc_3, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[147])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5464, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_subaccount_futures_margin_st, __pyx_t_4) < 0) __PYX_ERR(0, 5464, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":5495
 *         return self._request_margin_api('get', 'sub-account/status', True, data=params)
 * 
 *     def enable_subaccount_margin(self, **params):             # <<<<<<<<<<<<<<
 *         """Enable Margin for Sub-account (For Master Account)
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_297enable_subaccount_margin, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_enable_sub, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[148])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5495, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_enable_subaccount_margin, __pyx_t_4) < 0) __PYX_ERR(0, 5495, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":5522
 *         return self._request_margin_api('post', 'sub-account/margin/enable', True, data=params)
 * 
 *     def get_subaccount_margin_details(self, **params):             # <<<<<<<<<<<<<<
 *         """Get Detail on Sub-account's Margin Account (For Master Account)
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_299get_subaccount_margin_details, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_subacc_4, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[149])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5522, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_subaccount_margin_details, __pyx_t_4) < 0) __PYX_ERR(0, 5522, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":5589
 *         return self._request_margin_api('get', 'sub-account/margin/account', True, data=params)
 * 
 *     def get_subaccount_margin_summary(self, **params):             # <<<<<<<<<<<<<<
 *         """Get Summary of Sub-account's Margin Account (For Master Account)
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_301get_subaccount_margin_summary, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_subacc_5, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[150])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5589, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_subaccount_margin_summary, __pyx_t_4) < 0) __PYX_ERR(0, 5589, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":5626
 *         return self._request_margin_api('get', 'sub-account/margin/accountSummary', True, data=params)
 * 
 *     def enable_subaccount_futures(self, **params):             # <<<<<<<<<<<<<<
 *         """Enable Futures for Sub-account (For Master Account)
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_303enable_subaccount_futures, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_enable_sub_2, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[151])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5626, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_enable_subaccount_futures, __pyx_t_4) < 0) __PYX_ERR(0, 5626, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":5653
 *         return self._request_margin_api('post', 'sub-account/futures/enable', True, data=params)
 * 
 *     def get_subaccount_futures_details(self, **params):             # <<<<<<<<<<<<<<
 *         """Get Detail on Sub-account's Futures Account (For Master Account)
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_305get_subaccount_futures_details, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_subacc_6, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[152])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5653, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_subaccount_futures_details, __pyx_t_4) < 0) __PYX_ERR(0, 5653, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":5703
 *         return self._request_margin_api('get', 'sub-account/futures/account', True, data=params)
 * 
 *     def get_subaccount_futures_summary(self, **params):             # <<<<<<<<<<<<<<
 *         """Get Summary of Sub-account's Futures Account (For Master Account)
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_307get_subaccount_futures_summary, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_subacc_7, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[153])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5703, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_subaccount_futures_summary, __pyx_t_4) < 0) __PYX_ERR(0, 5703, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":5755
 *         return self._request_margin_api('get', 'sub-account/futures/accountSummary', True, data=params)
 * 
 *     def get_subaccount_futures_positionrisk(self, **params):             # <<<<<<<<<<<<<<
 *         """Get Futures Position-Risk of Sub-account (For Master Account)
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_309get_subaccount_futures_positionrisk, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_subacc_8, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[154])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5755, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_subaccount_futures_positionr, __pyx_t_4) < 0) __PYX_ERR(0, 5755, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":5787
 *         return self._request_margin_api('get', 'sub-account/futures/positionRisk', True, data=params)
 * 
 *     def make_subaccount_futures_transfer(self, **params):             # <<<<<<<<<<<<<<
 *         """Futures Transfer for Sub-account (For Master Account)
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_311make_subaccount_futures_transfer, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_make_subac, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[155])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5787, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_make_subaccount_futures_transfer, __pyx_t_4) < 0) __PYX_ERR(0, 5787, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":5817
 *         return self._request_margin_api('post', 'sub-account/futures/transfer', True, data=params)
 * 
 *     def make_subaccount_margin_transfer(self, **params):             # <<<<<<<<<<<<<<
 *         """Margin Transfer for Sub-account (For Master Account)
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_313make_subaccount_margin_transfer, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_make_subac_2, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[156])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5817, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_make_subaccount_margin_transfer, __pyx_t_4) < 0) __PYX_ERR(0, 5817, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":5845
 *         return self._request_margin_api('post', 'sub-account/margin/transfer', True, data=params)
 * 
 *     def make_subaccount_to_subaccount_transfer(self, **params):             # <<<<<<<<<<<<<<
 *         """Transfer to Sub-account of Same Master (For Sub-account)
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_315make_subaccount_to_subaccount_transfer, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_make_subac_3, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[157])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5845, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_make_subaccount_to_subaccount_tr, __pyx_t_4) < 0) __PYX_ERR(0, 5845, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":5872
 *         return self._request_margin_api('post', 'sub-account/transfer/subToSub', True, data=params)
 * 
 *     def make_subaccount_to_master_transfer(self, **params):             # <<<<<<<<<<<<<<
 *         """Transfer to Master (For Sub-account)
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_317make_subaccount_to_master_transfer, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_make_subac_4, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[158])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5872, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_make_subaccount_to_master_transf, __pyx_t_4) < 0) __PYX_ERR(0, 5872, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":5897
 *         return self._request_margin_api('post', 'sub-account/transfer/subToMaster', True, data=params)
 * 
 *     def get_subaccount_transfer_history(self, **params):             # <<<<<<<<<<<<<<
 *         """Subaccount Transfer History (For Sub-account)
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_319get_subaccount_transfer_history, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_subacc_9, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[159])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5897, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_subaccount_transfer_history, __pyx_t_4) < 0) __PYX_ERR(0, 5897, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":5947
 *         return self._request_margin_api('get', 'sub-account/transfer/subUserHistory', True, data=params)
 * 
 *     def make_universal_transfer(self, **params):             # <<<<<<<<<<<<<<
 *         """Universal Transfer (For Master Account)
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_321make_universal_transfer, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_make_unive, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[160])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5947, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_make_universal_transfer, __pyx_t_4) < 0) __PYX_ERR(0, 5947, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":5980
 *         return self._request_margin_api('post', 'sub-account/universalTransfer', True, data=params)
 * 
 *     def get_universal_transfer_history(self, **params):             # <<<<<<<<<<<<<<
 *         """Universal Transfer (For Master Account)
 * 
*/
  __pyx_t_4 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_323get_universal_transfer_history, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_univer, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[161])); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5980, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_universal_transfer_history, __pyx_t_4) < 0) __PYX_ERR(0, 5980, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "unicorn_binance_rest_api/manager.py":6034
 *         return self._request_margin_api('get', 'sub-account/universalTransfer', True, data=params)
 * 
 *     def get_used_weight(self, cached: bool = False, cached_timeout: Optional[float] = None) -> Optional[dict]:             # <<<<<<<<<<<<<<
 *         """
 *         Get the used weight from Binance endpoints (weight costs: 1)
*/
  __pyx_t_4 = __Pyx_PyDict_NewPresized(3); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 6034, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (PyDict_SetItem(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_cached, __pyx_mstate_global->__pyx_n_u_bool) < 0) __PYX_ERR(0, 6034, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_cached_timeout, __pyx_mstate_global->__pyx_kp_u_Optional_float) < 0) __PYX_ERR(0, 6034, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_return, __pyx_mstate_global->__pyx_kp_u_Optional_dict) < 0) __PYX_ERR(0, 6034, __pyx_L1_error)
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_325get_used_weight, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_used_w, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[162])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6034, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_8, __pyx_mstate_global->__pyx_tuple[166]);
  __Pyx_CyFunction_SetAnnotationsDict(__pyx_t_8, __pyx_t_4);
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_used_weight, __pyx_t_8) < 0) __PYX_ERR(0, 6034, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6067
 * 
 *     # Futures API
 *     def futures_ping(self):             # <<<<<<<<<<<<<<
 *         """Test connectivity to the Rest API
 * 
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_327futures_ping, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_pi, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[163])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6067, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_ping, __pyx_t_8) < 0) __PYX_ERR(0, 6067, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6075
 *         return self._request_futures_api('get', 'ping')
 * 
 *     def futures_time(self):             # <<<<<<<<<<<<<<
 *         """Test connectivity to the Rest API and get the current server time.
 * 
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_329futures_time, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_ti, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[164])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6075, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_time, __pyx_t_8) < 0) __PYX_ERR(0, 6075, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6083
 *         return self._request_futures_api('get', 'time')
 * 
 *     def futures_exchange_info(self, **params):             # <<<<<<<<<<<<<<
 *         """Current exchange trading rules and symbol information
 * 
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_331futures_exchange_info, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_ex, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[165])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6083, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_exchange_info, __pyx_t_8) < 0) __PYX_ERR(0, 6083, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6091
 *         return self._request_futures_api('get', 'exchangeInfo', data=params)
 * 
 *     def futures_order_book(self, **params):             # <<<<<<<<<<<<<<
 *         """Get the Order Book for the market
 * 
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_333futures_order_book, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_or, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[166])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6091, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_order_book, __pyx_t_8) < 0) __PYX_ERR(0, 6091, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6099
 *         return self._request_futures_api('get', 'depth', data=params)
 * 
 *     def futures_recent_trades(self, **params):             # <<<<<<<<<<<<<<
 *         """Get recent trades (up to last 500).
 * 
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_335futures_recent_trades, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_re, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[167])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6099, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_recent_trades, __pyx_t_8) < 0) __PYX_ERR(0, 6099, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6107
 *         return self._request_futures_api('get', 'trades', data=params)
 * 
 *     def futures_historical_trades(self, **params):             # <<<<<<<<<<<<<<
 *         """Get older market historical trades.
 * 
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_337futures_historical_trades, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_hi, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[168])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6107, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_historical_trades, __pyx_t_8) < 0) __PYX_ERR(0, 6107, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6115
 *         return self._request_futures_api('get', 'historicalTrades', data=params)
 * 
 *     def futures_aggregate_trades(self, **params):             # <<<<<<<<<<<<<<
 *         """Get compressed, aggregate trades. Trades that fill at the time, from the same order, with the same
 *         price will have the quantity aggregated.
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_339futures_aggregate_trades, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_ag, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[169])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6115, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_aggregate_trades, __pyx_t_8) < 0) __PYX_ERR(0, 6115, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6124
 *         return self._request_futures_api('get', 'aggTrades', data=params)
 * 
 *     def futures_klines(self, **params):             # <<<<<<<<<<<<<<
 *         """Kline/candlestick bars for a symbol. Klines are uniquely identified by their open time.
 * 
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_341futures_klines, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_kl, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[170])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6124, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_klines, __pyx_t_8) < 0) __PYX_ERR(0, 6124, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6132
 *         return self._request_futures_api('get', 'klines', data=params)
 * 
 *     def futures_mark_price(self, **params):             # <<<<<<<<<<<<<<
 *         """Get Mark Price and Funding Rate
 * 
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_343futures_mark_price, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_ma, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[171])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6132, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_mark_price, __pyx_t_8) < 0) __PYX_ERR(0, 6132, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6140
 *         return self._request_futures_api('get', 'premiumIndex', data=params)
 * 
 *     def futures_funding_rate(self, **params):             # <<<<<<<<<<<<<<
 *         """Get funding rate history
 * 
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_345futures_funding_rate, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_fu, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[172])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6140, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_funding_rate, __pyx_t_8) < 0) __PYX_ERR(0, 6140, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6148
 *         return self._request_futures_api('get', 'fundingRate', data=params)
 * 
 *     def futures_ticker(self, **params):             # <<<<<<<<<<<<<<
 *         """24 hour rolling window price change statistics.
 * 
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_347futures_ticker, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_ti_2, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[173])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6148, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_ticker, __pyx_t_8) < 0) __PYX_ERR(0, 6148, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6156
 *         return self._request_futures_api('get', 'ticker/24hr', data=params)
 * 
 *     def futures_symbol_ticker(self, **params):             # <<<<<<<<<<<<<<
 *         """Latest price for a symbol or symbols.
 * 
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_349futures_symbol_ticker, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_sy, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[174])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6156, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_symbol_ticker, __pyx_t_8) < 0) __PYX_ERR(0, 6156, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6164
 *         return self._request_futures_api('get', 'ticker/price', data=params)
 * 
 *     def futures_orderbook_ticker(self, **params):             # <<<<<<<<<<<<<<
 *         """Best price/qty on the order book for a symbol or symbols.
 * 
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_351futures_orderbook_ticker, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_or_2, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[175])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6164, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_orderbook_ticker, __pyx_t_8) < 0) __PYX_ERR(0, 6164, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6172
 *         return self._request_futures_api('get', 'ticker/bookTicker', data=params)
 * 
 *     def futures_liquidation_orders(self, **params):             # <<<<<<<<<<<<<<
 *         """Get all liquidation orders
 * 
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_353futures_liquidation_orders, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_li, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[176])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6172, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_liquidation_orders, __pyx_t_8) < 0) __PYX_ERR(0, 6172, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6180
 *         return self._request_futures_api('get', 'ticker/allForceOrders', data=params)
 * 
 *     def futures_open_interest(self, **params):             # <<<<<<<<<<<<<<
 *         """Get present open interest of a specific symbol.
 * 
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_355futures_open_interest, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_op, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[177])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6180, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_open_interest, __pyx_t_8) < 0) __PYX_ERR(0, 6180, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6188
 *         return self._request_futures_api('get', 'ticker/openInterest', data=params)
 * 
 *     def futures_open_interest_hist(self, **params):             # <<<<<<<<<<<<<<
 *         """Get open interest statistics of a specific symbol.
 * 
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_357futures_open_interest_hist, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_op_2, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[178])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6188, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_open_interest_hist, __pyx_t_8) < 0) __PYX_ERR(0, 6188, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6196
 *         return self._request_futures_data_api('get', 'openInterestHist', data=params)
 * 
 *     def futures_leverage_bracket(self, **params):             # <<<<<<<<<<<<<<
 *         """Notional and Leverage Brackets
 * 
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_359futures_leverage_bracket, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_le, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[179])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6196, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_leverage_bracket, __pyx_t_8) < 0) __PYX_ERR(0, 6196, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6204
 *         return self._request_futures_api('get', 'leverageBracket', True, data=params)
 * 
 *     def futures_account_transfer(self, **params):             # <<<<<<<<<<<<<<
 *         """Execute transfer between spot account and futures account.
 * 
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_361futures_account_transfer, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_ac, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[180])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6204, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_account_transfer, __pyx_t_8) < 0) __PYX_ERR(0, 6204, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6212
 *         return self._request_margin_api('post', 'futures/transfer', True, data=params)
 * 
 *     def futures_auto_cancel_all_open_orders(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Cancel all open orders of the specified symbol at the end of the specified countdown.
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_363futures_auto_cancel_all_open_orders, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_au, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[181])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6212, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_auto_cancel_all_open_ord, __pyx_t_8) < 0) __PYX_ERR(0, 6212, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6238
 *         return self._request_futures_api('post', 'countdownCancelAll', True, data=params)
 * 
 *     def futures_commission_rate(self, **params):             # <<<<<<<<<<<<<<
 *         """Get commission rate (user data)
 * 
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_365futures_commission_rate, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_co, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[182])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6238, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_commission_rate, __pyx_t_8) < 0) __PYX_ERR(0, 6238, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6246
 *         return self._request_futures_coin_api("get", "commissionRate", version=1, signed=True, data=params)
 * 
 *     def transfer_history(self, **params):             # <<<<<<<<<<<<<<
 *         """Get future account transaction history list
 * 
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_367transfer_history, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_transfer_h, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[183])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6246, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_transfer_history, __pyx_t_8) < 0) __PYX_ERR(0, 6246, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6254
 *         return self._request_margin_api('get', 'futures/transfer', True, data=params)
 * 
 *     def futures_create_order(self, **params):             # <<<<<<<<<<<<<<
 *         """Send in a new order.
 * 
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_369futures_create_order, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_cr, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[184])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6254, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_create_order, __pyx_t_8) < 0) __PYX_ERR(0, 6254, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6262
 *         return self._request_futures_api('post', 'order', True, data=params)
 * 
 *     def futures_place_batch_order(self, **params):             # <<<<<<<<<<<<<<
 *         """Send in new orders.
 *         https://binance-docs.github.io/apidocs/delivery/en/#place-multiple-orders-trade
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_371futures_place_batch_order, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_pl, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[185])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6262, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_place_batch_order, __pyx_t_8) < 0) __PYX_ERR(0, 6262, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6273
 *         return self._request_futures_api('post', 'batchOrders', True, data=params)
 * 
 *     def futures_get_order(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Check an order's status.
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_373futures_get_order, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_ge, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[186])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6273, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_get_order, __pyx_t_8) < 0) __PYX_ERR(0, 6273, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6282
 *         return self._request_futures_api('get', 'order', True, data=params)
 * 
 *     def futures_get_open_orders(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get all open orders on a symbol.
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_375futures_get_open_orders, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_ge_2, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[187])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6282, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_get_open_orders, __pyx_t_8) < 0) __PYX_ERR(0, 6282, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6291
 *         return self._request_futures_api('get', 'openOrders', True, data=params)
 * 
 *     def futures_get_all_orders(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get all futures account orders; active, canceled, or filled.
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_377futures_get_all_orders, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_ge_3, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[188])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6291, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_get_all_orders, __pyx_t_8) < 0) __PYX_ERR(0, 6291, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6300
 *         return self._request_futures_api('get', 'allOrders', True, data=params)
 * 
 *     def futures_cancel_order(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Cancel an active futures order.
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_379futures_cancel_order, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_ca, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[189])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6300, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_cancel_order, __pyx_t_8) < 0) __PYX_ERR(0, 6300, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6309
 *         return self._request_futures_api('delete', 'order', True, data=params)
 * 
 *     def futures_cancel_all_open_orders(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Cancel all open futures orders
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_381futures_cancel_all_open_orders, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_ca_2, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[190])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6309, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_cancel_all_open_orders, __pyx_t_8) < 0) __PYX_ERR(0, 6309, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6318
 *         return self._request_futures_api('delete', 'allOpenOrders', True, data=params)
 * 
 *     def futures_cancel_orders(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Cancel multiple futures orders
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_383futures_cancel_orders, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_ca_3, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[191])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6318, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_cancel_orders, __pyx_t_8) < 0) __PYX_ERR(0, 6318, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6327
 *         return self._request_futures_api('delete', 'batchOrders', True, data=params)
 * 
 *     def futures_account_balance(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get futures account balance
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_385futures_account_balance, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_ac_2, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[192])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6327, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_account_balance, __pyx_t_8) < 0) __PYX_ERR(0, 6327, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6336
 *         return self._request_futures_api('get', 'balance', True, version=2, data=params)
 * 
 *     def futures_account(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get current account information.
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_387futures_account, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_ac_3, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[193])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6336, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_account, __pyx_t_8) < 0) __PYX_ERR(0, 6336, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6345
 *         return self._request_futures_api('get', 'account', True, version=2, data=params)
 * 
 *     def futures_change_leverage(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Change user's initial leverage of specific symbol market
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_389futures_change_leverage, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_ch, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[194])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6345, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_change_leverage, __pyx_t_8) < 0) __PYX_ERR(0, 6345, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6354
 *         return self._request_futures_api('post', 'leverage', True, data=params)
 * 
 *     def futures_change_margin_type(self, **params):             # <<<<<<<<<<<<<<
 *         """Change the margin type for a symbol
 * 
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_391futures_change_margin_type, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_ch_2, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[195])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6354, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_change_margin_type, __pyx_t_8) < 0) __PYX_ERR(0, 6354, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6362
 *         return self._request_futures_api('post', 'marginType', True, data=params)
 * 
 *     def futures_change_position_margin(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Change the position margin for a symbol
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_393futures_change_position_margin, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_ch_3, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[196])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6362, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_change_position_margin, __pyx_t_8) < 0) __PYX_ERR(0, 6362, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6371
 *         return self._request_futures_api('post', 'positionMargin', True, data=params)
 * 
 *     def futures_position_margin_history(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get position margin change history
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_395futures_position_margin_history, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_po, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[197])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6371, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_position_margin_history, __pyx_t_8) < 0) __PYX_ERR(0, 6371, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6380
 *         return self._request_futures_api('get', 'positionMargin/history', True, data=params)
 * 
 *     def futures_position_information(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get position information
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_397futures_position_information, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_po_2, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[198])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6380, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_position_information, __pyx_t_8) < 0) __PYX_ERR(0, 6380, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6389
 *         return self._request_futures_api('get', 'positionRisk', True, version=2, data=params)
 * 
 *     def futures_account_trades(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get trades for the authenticated account and symbol.
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_399futures_account_trades, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_ac_4, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[199])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6389, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_account_trades, __pyx_t_8) < 0) __PYX_ERR(0, 6389, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6398
 *         return self._request_futures_api('get', 'userTrades', True, data=params)
 * 
 *     def futures_income_history(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get income history for authenticated account
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_401futures_income_history, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_in, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[200])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6398, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_income_history, __pyx_t_8) < 0) __PYX_ERR(0, 6398, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6407
 *         return self._request_futures_api('get', 'income', True, data=params)
 * 
 *     def futures_change_position_mode(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Change position mode for authenticated account
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_403futures_change_position_mode, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_ch_4, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[201])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6407, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_change_position_mode, __pyx_t_8) < 0) __PYX_ERR(0, 6407, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6416
 *         return self._request_futures_api('post', 'positionSide/dual', True, data=params)
 * 
 *     def futures_get_position_mode(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get position mode for authenticated account
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_405futures_get_position_mode, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_ge_4, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[202])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6416, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_get_position_mode, __pyx_t_8) < 0) __PYX_ERR(0, 6416, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6425
 *         return self._request_futures_api('get', 'positionSide/dual', True, data=params)
 * 
 *     def futures_stream_get_listen_key(self, output="value", throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         """Start a new futures data stream and return the listen key
 *         If a stream already exists it should return the same key.
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_407futures_stream_get_listen_key, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_st, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[203])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6425, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_8, __pyx_mstate_global->__pyx_tuple[165]);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_stream_get_listen_key, __pyx_t_8) < 0) __PYX_ERR(0, 6425, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6459
 *             return res['listenKey']
 * 
 *     def futures_stream_keepalive(self, listenKey, throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         """PING a futures data stream to prevent a timeout.
 * 
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_409futures_stream_keepalive, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_st_2, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[204])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6459, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_8, __pyx_mstate_global->__pyx_tuple[161]);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_stream_keepalive, __pyx_t_8) < 0) __PYX_ERR(0, 6459, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6484
 *                                          throw_exception=throw_exception, **kwargs)
 * 
 *     def futures_stream_close(self, listenKey, throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         """Close out a futures data stream.
 * 
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_411futures_stream_close, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_st_3, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[205])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6484, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_8, __pyx_mstate_global->__pyx_tuple[161]);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_stream_close, __pyx_t_8) < 0) __PYX_ERR(0, 6484, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6510
 * 
 *     # COIN Futures API
 *     def futures_coin_ping(self):             # <<<<<<<<<<<<<<
 *         """
 *         Test connectivity to the Rest API
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_413futures_coin_ping, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_co_2, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[206])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6510, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_coin_ping, __pyx_t_8) < 0) __PYX_ERR(0, 6510, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6519
 *         return self._request_futures_coin_api("get", "ping")
 * 
 *     def futures_coin_time(self):             # <<<<<<<<<<<<<<
 *         """
 *         Test connectivity to the Rest API and get the current server time.
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_415futures_coin_time, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_co_3, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[207])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6519, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_coin_time, __pyx_t_8) < 0) __PYX_ERR(0, 6519, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6528
 *         return self._request_futures_coin_api("get", "time")
 * 
 *     def futures_coin_exchange_info(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Current exchange trading rules and symbol information
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_417futures_coin_exchange_info, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_co_4, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[208])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6528, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_coin_exchange_info, __pyx_t_8) < 0) __PYX_ERR(0, 6528, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6537
 *         return self._request_futures_coin_api("get", "exchangeInfo", data=params)
 * 
 *     def futures_coin_order_book(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get the Order Book for the market
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_419futures_coin_order_book, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_co_5, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[209])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6537, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_coin_order_book, __pyx_t_8) < 0) __PYX_ERR(0, 6537, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6546
 *         return self._request_futures_coin_api("get", "depth", data=params)
 * 
 *     def futures_coin_recent_trades(self, **params):             # <<<<<<<<<<<<<<
 *         """Get recent trades (up to last 500).
 * 
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_421futures_coin_recent_trades, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_co_6, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[210])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6546, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_coin_recent_trades, __pyx_t_8) < 0) __PYX_ERR(0, 6546, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6554
 *         return self._request_futures_coin_api("get", "trades", data=params)
 * 
 *     def futures_coin_historical_trades(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get older market historical trades.
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_423futures_coin_historical_trades, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_co_7, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[211])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6554, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_coin_historical_trades, __pyx_t_8) < 0) __PYX_ERR(0, 6554, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6563
 *         return self._request_futures_coin_api("get", "historicalTrades", data=params)
 * 
 *     def futures_coin_aggregate_trades(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get compressed, aggregate trades. Trades that fill at the time, from the same order, with the same
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_425futures_coin_aggregate_trades, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_co_8, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[212])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6563, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_coin_aggregate_trades, __pyx_t_8) < 0) __PYX_ERR(0, 6563, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6573
 *         return self._request_futures_coin_api("get", "aggTrades", data=params)
 * 
 *     def futures_coin_klines(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Kline/candlestick bars for a symbol. Klines are uniquely identified by their open time.
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_427futures_coin_klines, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_co_9, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[213])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6573, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_coin_klines, __pyx_t_8) < 0) __PYX_ERR(0, 6573, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6582
 *         return self._request_futures_coin_api("get", "klines", data=params)
 * 
 *     def futures_coin_continous_klines(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Kline/candlestick bars for a specific contract type. Klines are uniquely identified by their open time.
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_429futures_coin_continous_klines, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_co_10, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[214])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6582, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_coin_continous_klines, __pyx_t_8) < 0) __PYX_ERR(0, 6582, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6591
 *         return self._request_futures_coin_api("get", "continuousKlines", data=params)
 * 
 *     def futures_coin_index_price_klines(self, **params):             # <<<<<<<<<<<<<<
 *         """Kline/candlestick bars for the index price of a pair..
 * 
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_431futures_coin_index_price_klines, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_co_11, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[215])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6591, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_coin_index_price_klines, __pyx_t_8) < 0) __PYX_ERR(0, 6591, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6599
 *         return self._request_futures_coin_api("get", "indexPriceKlines", data=params)
 * 
 *     def futures_coin_mark_price_klines(self, **params):             # <<<<<<<<<<<<<<
 *         """Kline/candlestick bars for the index price of a pair..
 * 
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_433futures_coin_mark_price_klines, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_co_12, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[216])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6599, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_coin_mark_price_klines, __pyx_t_8) < 0) __PYX_ERR(0, 6599, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6607
 *         return self._request_futures_coin_api("get", "markPriceKlines", data=params)
 * 
 *     def futures_coin_mark_price(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get Mark Price and Funding Rate
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_435futures_coin_mark_price, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_co_13, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[217])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6607, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_coin_mark_price, __pyx_t_8) < 0) __PYX_ERR(0, 6607, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6616
 *         return self._request_futures_coin_api("get", "premiumIndex", data=params)
 * 
 *     def futures_coin_funding_rate(self, **params):             # <<<<<<<<<<<<<<
 *         """Get funding rate history
 * 
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_437futures_coin_funding_rate, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_co_14, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[218])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6616, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_coin_funding_rate, __pyx_t_8) < 0) __PYX_ERR(0, 6616, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6624
 *         return self._request_futures_coin_api("get", "fundingRate", data=params)
 * 
 *     def futures_coin_ticker(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         24 hour rolling window price change statistics.
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_439futures_coin_ticker, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_co_15, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[219])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6624, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_coin_ticker, __pyx_t_8) < 0) __PYX_ERR(0, 6624, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6633
 *         return self._request_futures_coin_api("get", "ticker/24hr", data=params)
 * 
 *     def futures_coin_symbol_ticker(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Latest price for a symbol or symbols.
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_441futures_coin_symbol_ticker, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_co_16, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[220])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6633, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_coin_symbol_ticker, __pyx_t_8) < 0) __PYX_ERR(0, 6633, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6642
 *         return self._request_futures_coin_api("get", "ticker/price", data=params)
 * 
 *     def futures_coin_orderbook_ticker(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Best price/qty on the order book for a symbol or symbols.
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_443futures_coin_orderbook_ticker, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_co_17, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[221])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6642, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_coin_orderbook_ticker, __pyx_t_8) < 0) __PYX_ERR(0, 6642, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6651
 *         return self._request_futures_coin_api("get", "ticker/bookTicker", data=params)
 * 
 *     def futures_coin_liquidation_orders(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get all liquidation orders
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_445futures_coin_liquidation_orders, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_co_18, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[222])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6651, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_coin_liquidation_orders, __pyx_t_8) < 0) __PYX_ERR(0, 6651, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6660
 *         return self._request_futures_coin_api("get", "allForceOrders", data=params)
 * 
 *     def futures_coin_open_interest(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get present open interest of a specific symbol.
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_447futures_coin_open_interest, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_co_19, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[223])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6660, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_coin_open_interest, __pyx_t_8) < 0) __PYX_ERR(0, 6660, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6669
 *         return self._request_futures_coin_api("get", "openInterest", data=params)
 * 
 *     def futures_coin_open_interest_hist(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get open interest statistics of a specific symbol.
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_449futures_coin_open_interest_hist, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_co_20, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[224])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6669, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_coin_open_interest_hist, __pyx_t_8) < 0) __PYX_ERR(0, 6669, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6678
 *         return self._request_futures_coin_data_api("get", "openInterestHist", data=params)
 * 
 *     def futures_coin_leverage_bracket(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Notional and Leverage Brackets
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_451futures_coin_leverage_bracket, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_co_21, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[225])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6678, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_coin_leverage_bracket, __pyx_t_8) < 0) __PYX_ERR(0, 6678, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6689
 *         )
 * 
 *     def new_transfer_history(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get future account transaction history list
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_453new_transfer_history, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_new_transf, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[226])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6689, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_new_transfer_history, __pyx_t_8) < 0) __PYX_ERR(0, 6689, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6699
 *         # return self._request_margin_api("get", "futures/transfer", True, data=params)
 * 
 *     def universal_transfer(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Unviversal transfer api accross different unicorn_binance_rest_api account types
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_455universal_transfer, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_universal, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[227])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6699, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_universal_transfer, __pyx_t_8) < 0) __PYX_ERR(0, 6699, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6709
 *         )
 * 
 *     def futures_coin_create_order(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Send in a new order.
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_457futures_coin_create_order, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_co_22, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[228])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6709, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_coin_create_order, __pyx_t_8) < 0) __PYX_ERR(0, 6709, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6718
 *         return self._request_futures_coin_api("post", "order", True, data=params)
 * 
 *     def futures_coin_place_batch_order(self, **params):             # <<<<<<<<<<<<<<
 *         """Send in new orders.
 *         https://binance-docs.github.io/apidocs/delivery/en/#place-multiple-orders-trade
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_459futures_coin_place_batch_order, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_co_23, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[229])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6718, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_coin_place_batch_order, __pyx_t_8) < 0) __PYX_ERR(0, 6718, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6729
 *         return self._request_futures_coin_api('post', 'batchOrders', True, data=params)
 * 
 *     def futures_coin_get_order(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Check an order's status.
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_461futures_coin_get_order, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_co_24, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[230])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6729, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_coin_get_order, __pyx_t_8) < 0) __PYX_ERR(0, 6729, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6738
 *         return self._request_futures_coin_api("get", "order", True, data=params)
 * 
 *     def futures_coin_get_open_orders(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get all open orders on a symbol.
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_463futures_coin_get_open_orders, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_co_25, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[231])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6738, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_coin_get_open_orders, __pyx_t_8) < 0) __PYX_ERR(0, 6738, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6747
 *         return self._request_futures_coin_api("get", "openOrders", True, data=params)
 * 
 *     def futures_coin_get_all_orders(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get all futures account orders; active, canceled, or filled.
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_465futures_coin_get_all_orders, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_co_26, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[232])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6747, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_coin_get_all_orders, __pyx_t_8) < 0) __PYX_ERR(0, 6747, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6758
 *         )
 * 
 *     def futures_coin_cancel_order(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Cancel an active futures order.
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_467futures_coin_cancel_order, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_co_27, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[233])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6758, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_coin_cancel_order, __pyx_t_8) < 0) __PYX_ERR(0, 6758, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6769
 *         )
 * 
 *     def futures_coin_cancel_all_open_orders(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Cancel all open futures orders
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_469futures_coin_cancel_all_open_orders, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_co_28, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[234])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6769, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_coin_cancel_all_open_ord, __pyx_t_8) < 0) __PYX_ERR(0, 6769, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6780
 *         )
 * 
 *     def futures_coin_cancel_orders(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Cancel multiple futures orders
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_471futures_coin_cancel_orders, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_co_29, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[235])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6780, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_coin_cancel_orders, __pyx_t_8) < 0) __PYX_ERR(0, 6780, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6791
 *         )
 * 
 *     def futures_coin_account_balance(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get futures account balance
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_473futures_coin_account_balance, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_co_30, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[236])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6791, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_coin_account_balance, __pyx_t_8) < 0) __PYX_ERR(0, 6791, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6802
 *         )
 * 
 *     def futures_coin_account(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get current account information.
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_475futures_coin_account, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_co_31, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[237])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6802, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_coin_account, __pyx_t_8) < 0) __PYX_ERR(0, 6802, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6813
 *         )
 * 
 *     def futures_coin_change_leverage(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Change user's initial leverage of specific symbol market
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_477futures_coin_change_leverage, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_co_32, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[238])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6813, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_coin_change_leverage, __pyx_t_8) < 0) __PYX_ERR(0, 6813, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6824
 *         )
 * 
 *     def futures_coin_change_margin_type(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Change the margin type for a symbol
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_479futures_coin_change_margin_type, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_co_33, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[239])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6824, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_coin_change_margin_type, __pyx_t_8) < 0) __PYX_ERR(0, 6824, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6835
 *         )
 * 
 *     def futures_coin_change_position_margin(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Change the position margin for a symbol
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_481futures_coin_change_position_margin, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_co_34, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[240])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6835, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_coin_change_position_mar, __pyx_t_8) < 0) __PYX_ERR(0, 6835, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6846
 *         )
 * 
 *     def futures_coin_position_margin_history(self, **params):             # <<<<<<<<<<<<<<
 *         """Get position margin change history
 * 
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_483futures_coin_position_margin_history, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_co_35, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[241])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6846, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_coin_position_margin_his, __pyx_t_8) < 0) __PYX_ERR(0, 6846, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6856
 *         )
 * 
 *     def futures_coin_position_information(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get position information
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_485futures_coin_position_information, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_co_36, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[242])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6856, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_coin_position_informatio, __pyx_t_8) < 0) __PYX_ERR(0, 6856, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6865
 *         return self._request_futures_coin_api("get", "positionRisk", True, data=params)
 * 
 *     def futures_coin_account_trades(self, **params):             # <<<<<<<<<<<<<<
 *         """Get trades for the authenticated account and symbol.
 * 
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_487futures_coin_account_trades, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_co_37, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[243])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6865, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_coin_account_trades, __pyx_t_8) < 0) __PYX_ERR(0, 6865, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6873
 *         return self._request_futures_coin_api("get", "userTrades", True, data=params)
 * 
 *     def futures_coin_income_history(self, **params):             # <<<<<<<<<<<<<<
 *         """Get income history for authenticated account
 * 
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_489futures_coin_income_history, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_co_38, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[244])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6873, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_coin_income_history, __pyx_t_8) < 0) __PYX_ERR(0, 6873, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6881
 *         return self._request_futures_coin_api("get", "income", True, data=params)
 * 
 *     def futures_coin_change_position_mode(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Change user's position mode (Hedge Mode or One-way Mode ) on EVERY symbol
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_491futures_coin_change_position_mode, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_co_39, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[245])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6881, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_coin_change_position_mod, __pyx_t_8) < 0) __PYX_ERR(0, 6881, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6889
 *         return self._request_futures_coin_api("post", "positionSide/dual", True, data=params)
 * 
 *     def futures_coin_get_position_mode(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get user's position mode (Hedge Mode or One-way Mode ) on EVERY symbol
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_493futures_coin_get_position_mode, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_co_40, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[246])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6889, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_coin_get_position_mode, __pyx_t_8) < 0) __PYX_ERR(0, 6889, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6898
 *         return self._request_futures_coin_api("get", "positionSide/dual", True, data=params)
 * 
 *     def futures_coin_stream_get_listen_key(self, output="value", throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         """Start a new coin futures data stream and return the listen key
 *         If a stream already exists it should return the same key.
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_495futures_coin_stream_get_listen_key, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_co_41, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[247])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6898, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_8, __pyx_mstate_global->__pyx_tuple[165]);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_coin_stream_get_listen_k, __pyx_t_8) < 0) __PYX_ERR(0, 6898, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6932
 *             return res['listenKey']
 * 
 *     def futures_coin_stream_keepalive(self, listenKey, throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         """PING a coin futures data stream to prevent a timeout.
 * 
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_497futures_coin_stream_keepalive, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_co_42, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[248])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6932, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_8, __pyx_mstate_global->__pyx_tuple[161]);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_coin_stream_keepalive, __pyx_t_8) < 0) __PYX_ERR(0, 6932, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6957
 *                                               throw_exception=throw_exception, **kwargs)
 * 
 *     def futures_coin_stream_close(self, listenKey, throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         """Close out a coin futures data stream.
 * 
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_499futures_coin_stream_close, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_futures_co_43, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[249])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6957, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_8, __pyx_mstate_global->__pyx_tuple[161]);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_futures_coin_stream_close, __pyx_t_8) < 0) __PYX_ERR(0, 6957, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":6982
 *                                               throw_exception=throw_exception, **kwargs)
 * 
 *     def get_all_coins_info(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get information of coins (available for deposit and withdraw) for user.
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_501get_all_coins_info, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_all_co, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[250])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6982, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_all_coins_info, __pyx_t_8) < 0) __PYX_ERR(0, 6982, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":7059
 *         return self._request_margin_api('get', 'capital/config/getall', True, data=params)
 * 
 *     def get_account_snapshot(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Get daily account snapshot of specific type.
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_503get_account_snapshot, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_get_accoun_4, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[251])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7059, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_account_snapshot, __pyx_t_8) < 0) __PYX_ERR(0, 7059, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":7175
 *         return self._request_margin_api('get', 'accountSnapshot', True, data=params)
 * 
 *     def disable_fast_withdraw_switch(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Disable Fast Withdraw Switch
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_505disable_fast_withdraw_switch, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_disable_fa, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[252])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7175, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_disable_fast_withdraw_switch, __pyx_t_8) < 0) __PYX_ERR(0, 7175, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":7191
 *         return self._request_margin_api('post', 'disableFastWithdrawSwitch', True, data=params)
 * 
 *     def enable_fast_withdraw_switch(self, **params):             # <<<<<<<<<<<<<<
 *         """
 *         Enable Fast Withdraw Switch
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_507enable_fast_withdraw_switch, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_enable_fas, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[253])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7191, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_enable_fast_withdraw_switch, __pyx_t_8) < 0) __PYX_ERR(0, 7191, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":7207
 *         return self._request_margin_api('post', 'enableFastWithdrawSwitch', True, data=params)
 * 
 *     def stop_manager(self):             # <<<<<<<<<<<<<<
 *         """
 *         Stop the BinanceRestApiManager
*/
  __pyx_t_8 = __Pyx_CyFunction_New(&__pyx_mdef_24unicorn_binance_rest_api_7manager_21BinanceRestApiManager_509stop_manager, 0, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager_stop_manag_3, NULL, __pyx_mstate_global->__pyx_n_u_unicorn_binance_rest_api_manager, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[254])); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7207, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (__Pyx_SetNameInClass(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_stop_manager, __pyx_t_8) < 0) __PYX_ERR(0, 7207, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

  /* "unicorn_binance_rest_api/manager.py":66
 * 
 * 
 * class BinanceRestApiManager(object):             # <<<<<<<<<<<<<<
 *     """
 *     A Python SDK to use the Binance REST API`s (com+testnet, com-margin+testnet, com-isolated_margin+testnet,
*/
  __pyx_t_8 = __Pyx_Py3ClassCreate(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager, __pyx_t_3, __pyx_t_2, NULL, 0, 0); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 66, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_BinanceRestApiManager, __pyx_t_8) < 0) __PYX_ERR(0, 66, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;

  /* "unicorn_binance_rest_api/manager.py":1
 * #!/usr/bin/env python3             # <<<<<<<<<<<<<<
 * # -*- coding: utf-8 -*-
 * # \_()_/
*/
  __pyx_t_3 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_test, __pyx_t_3) < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;

  /*--- Wrapped vars code ---*/

  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_XDECREF(__pyx_t_8);
  __Pyx_XDECREF(__pyx_t_9);
  if (__pyx_m) {
    if (__pyx_mstate->__pyx_d && stringtab_initialized) {
      __Pyx_AddTraceback("init unicorn_binance_rest_api.manager", __pyx_clineno, __pyx_lineno, __pyx_filename);
    }
    #if !CYTHON_USE_MODULE_STATE
    Py_CLEAR(__pyx_m);
    #else
    Py_DECREF(__pyx_m);
    if (pystate_addmodule_run) {
      PyObject *tp, *value, *tb;
      PyErr_Fetch(&tp, &value, &tb);
      PyState_RemoveModule(&__pyx_moduledef);
      PyErr_Restore(tp, value, tb);
    }
    #endif
  } else if (!PyErr_Occurred()) {
    PyErr_SetString(PyExc_ImportError, "init unicorn_binance_rest_api.manager");
  }
  __pyx_L0:;
  __Pyx_RefNannyFinishContext();
  #if CYTHON_PEP489_MULTI_PHASE_INIT
  return (__pyx_m != NULL) ? 0 : -1;
  #else
  return __pyx_m;
  #endif
}
/* #### Code section: pystring_table ### */

typedef struct {
    const char *s;
#if 2209 <= 65535
    const unsigned short n;
#elif 2209 / 2 < INT_MAX
    const unsigned int n;
#elif 2209 / 2 < LONG_MAX
    const unsigned long n;
#else
    const Py_ssize_t n;
#endif
#if 1 <= 31
    const unsigned int encoding : 5;
#elif 1 <= 255
    const unsigned char encoding;
#elif 1 <= 65535
    const unsigned short encoding;
#else
    const Py_ssize_t encoding;
#endif
    const unsigned int is_unicode : 1;
    const unsigned int intern : 1;
} __Pyx_StringTabEntry;
static const char * const __pyx_string_tab_encodings[] = { 0 };
static const __Pyx_StringTabEntry __pyx_string_tab[] = {
  {__pyx_k_, sizeof(__pyx_k_), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_ */
  {__pyx_k_12h, sizeof(__pyx_k_12h), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_12h */
  {__pyx_k_15m, sizeof(__pyx_k_15m), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_15m */
  {__pyx_k_1M, sizeof(__pyx_k_1M), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_1M */
  {__pyx_k_1d, sizeof(__pyx_k_1d), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_1d */
  {__pyx_k_1h, sizeof(__pyx_k_1h), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_1h */
  {__pyx_k_1m, sizeof(__pyx_k_1m), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_1m */
  {__pyx_k_1s, sizeof(__pyx_k_1s), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_1s */
  {__pyx_k_1w, sizeof(__pyx_k_1w), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_1w */
  {__pyx_k_22, sizeof(__pyx_k_22), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_22 */
  {__pyx_k_27, sizeof(__pyx_k_27), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_27 */
  {__pyx_k_2_8_0, sizeof(__pyx_k_2_8_0), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_2_8_0 */
  {__pyx_k_2h, sizeof(__pyx_k_2h), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_2h */
  {__pyx_k_30m, sizeof(__pyx_k_30m), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_30m */
  {__pyx_k_3d, sizeof(__pyx_k_3d), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_3d */
  {__pyx_k_3m, sizeof(__pyx_k_3m), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_3m */
  {__pyx_k_4h, sizeof(__pyx_k_4h), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_4h */
  {__pyx_k_5m, sizeof(__pyx_k_5m), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_5m */
  {__pyx_k_6h, sizeof(__pyx_k_6h), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_6h */
  {__pyx_k_8h, sizeof(__pyx_k_8h), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_8h */
  {__pyx_k_ACK, sizeof(__pyx_k_ACK), 0, 1, 1}, /* PyObject cname: __pyx_n_u_ACK */
  {__pyx_k_AGG_BEST_MATCH, sizeof(__pyx_k_AGG_BEST_MATCH), 0, 1, 1}, /* PyObject cname: __pyx_n_u_AGG_BEST_MATCH */
  {__pyx_k_AGG_BUYER_MAKES, sizeof(__pyx_k_AGG_BUYER_MAKES), 0, 1, 1}, /* PyObject cname: __pyx_n_u_AGG_BUYER_MAKES */
  {__pyx_k_AGG_FIRST_TRADE_ID, sizeof(__pyx_k_AGG_FIRST_TRADE_ID), 0, 1, 1}, /* PyObject cname: __pyx_n_u_AGG_FIRST_TRADE_ID */
  {__pyx_k_AGG_ID, sizeof(__pyx_k_AGG_ID), 0, 1, 1}, /* PyObject cname: __pyx_n_u_AGG_ID */
  {__pyx_k_AGG_LAST_TRADE_ID, sizeof(__pyx_k_AGG_LAST_TRADE_ID), 0, 1, 1}, /* PyObject cname: __pyx_n_u_AGG_LAST_TRADE_ID */
  {__pyx_k_AGG_PRICE, sizeof(__pyx_k_AGG_PRICE), 0, 1, 1}, /* PyObject cname: __pyx_n_u_AGG_PRICE */
  {__pyx_k_AGG_QUANTITY, sizeof(__pyx_k_AGG_QUANTITY), 0, 1, 1}, /* PyObject cname: __pyx_n_u_AGG_QUANTITY */
  {__pyx_k_AGG_TIME, sizeof(__pyx_k_AGG_TIME), 0, 1, 1}, /* PyObject cname: __pyx_n_u_AGG_TIME */
  {__pyx_k_API_KEY, sizeof(__pyx_k_API_KEY), 0, 1, 1}, /* PyObject cname: __pyx_n_u_API_KEY */
  {__pyx_k_API_SECRET, sizeof(__pyx_k_API_SECRET), 0, 1, 1}, /* PyObject cname: __pyx_n_u_API_SECRET */
  {__pyx_k_API_URL, sizeof(__pyx_k_API_URL), 0, 1, 1}, /* PyObject cname: __pyx_n_u_API_URL */
  {__pyx_k_A_Python_SDK_to_use_the_Binance, sizeof(__pyx_k_A_Python_SDK_to_use_the_Binance), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_A_Python_SDK_to_use_the_Binance */
  {__pyx_k_Accept, sizeof(__pyx_k_Accept), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Accept */
  {__pyx_k_AlreadyStoppedError, sizeof(__pyx_k_AlreadyStoppedError), 0, 1, 1}, /* PyObject cname: __pyx_n_u_AlreadyStoppedError */
  {__pyx_k_An_exception_occurred, sizeof(__pyx_k_An_exception_occurred), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_An_exception_occurred */
  {__pyx_k_AttributeError, sizeof(__pyx_k_AttributeError), 0, 1, 1}, /* PyObject cname: __pyx_n_u_AttributeError */
  {__pyx_k_BUY, sizeof(__pyx_k_BUY), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BUY */
  {__pyx_k_BinanceAPIException, sizeof(__pyx_k_BinanceAPIException), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceAPIException */
  {__pyx_k_BinanceRequestException, sizeof(__pyx_k_BinanceRequestException), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRequestException */
  {__pyx_k_BinanceRestApiManager, sizeof(__pyx_k_BinanceRestApiManager), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager */
  {__pyx_k_BinanceRestApiManager___enter, sizeof(__pyx_k_BinanceRestApiManager___enter), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager___enter */
  {__pyx_k_BinanceRestApiManager___exit, sizeof(__pyx_k_BinanceRestApiManager___exit), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager___exit */
  {__pyx_k_BinanceRestApiManager___init, sizeof(__pyx_k_BinanceRestApiManager___init), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager___init */
  {__pyx_k_BinanceRestApiManager__create_ap, sizeof(__pyx_k_BinanceRestApiManager__create_ap), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager__create_ap */
  {__pyx_k_BinanceRestApiManager__create_fu, sizeof(__pyx_k_BinanceRestApiManager__create_fu), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager__create_fu */
  {__pyx_k_BinanceRestApiManager__create_fu_2, sizeof(__pyx_k_BinanceRestApiManager__create_fu_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager__create_fu_2 */
  {__pyx_k_BinanceRestApiManager__create_fu_3, sizeof(__pyx_k_BinanceRestApiManager__create_fu_3), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager__create_fu_3 */
  {__pyx_k_BinanceRestApiManager__create_fu_4, sizeof(__pyx_k_BinanceRestApiManager__create_fu_4), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager__create_fu_4 */
  {__pyx_k_BinanceRestApiManager__create_ma, sizeof(__pyx_k_BinanceRestApiManager__create_ma), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager__create_ma */
  {__pyx_k_BinanceRestApiManager__create_we, sizeof(__pyx_k_BinanceRestApiManager__create_we), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager__create_we */
  {__pyx_k_BinanceRestApiManager__delete, sizeof(__pyx_k_BinanceRestApiManager__delete), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager__delete */
  {__pyx_k_BinanceRestApiManager__generate, sizeof(__pyx_k_BinanceRestApiManager__generate), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager__generate */
  {__pyx_k_BinanceRestApiManager__get, sizeof(__pyx_k_BinanceRestApiManager__get), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager__get */
  {__pyx_k_BinanceRestApiManager__get_earli, sizeof(__pyx_k_BinanceRestApiManager__get_earli), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager__get_earli */
  {__pyx_k_BinanceRestApiManager__handle_re, sizeof(__pyx_k_BinanceRestApiManager__handle_re), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager__handle_re */
  {__pyx_k_BinanceRestApiManager__init_sess, sizeof(__pyx_k_BinanceRestApiManager__init_sess), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager__init_sess */
  {__pyx_k_BinanceRestApiManager__order_par, sizeof(__pyx_k_BinanceRestApiManager__order_par), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager__order_par */
  {__pyx_k_BinanceRestApiManager__post, sizeof(__pyx_k_BinanceRestApiManager__post), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager__post */
  {__pyx_k_BinanceRestApiManager__put, sizeof(__pyx_k_BinanceRestApiManager__put), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager__put */
  {__pyx_k_BinanceRestApiManager__request, sizeof(__pyx_k_BinanceRestApiManager__request), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager__request */
  {__pyx_k_BinanceRestApiManager__request_a, sizeof(__pyx_k_BinanceRestApiManager__request_a), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager__request_a */
  {__pyx_k_BinanceRestApiManager__request_f, sizeof(__pyx_k_BinanceRestApiManager__request_f), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager__request_f */
  {__pyx_k_BinanceRestApiManager__request_f_2, sizeof(__pyx_k_BinanceRestApiManager__request_f_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager__request_f_2 */
  {__pyx_k_BinanceRestApiManager__request_f_3, sizeof(__pyx_k_BinanceRestApiManager__request_f_3), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager__request_f_3 */
  {__pyx_k_BinanceRestApiManager__request_f_4, sizeof(__pyx_k_BinanceRestApiManager__request_f_4), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager__request_f_4 */
  {__pyx_k_BinanceRestApiManager__request_l, sizeof(__pyx_k_BinanceRestApiManager__request_l), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager__request_l */
  {__pyx_k_BinanceRestApiManager__request_m, sizeof(__pyx_k_BinanceRestApiManager__request_m), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager__request_m */
  {__pyx_k_BinanceRestApiManager__request_w, sizeof(__pyx_k_BinanceRestApiManager__request_w), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager__request_w */
  {__pyx_k_BinanceRestApiManager__save_used, sizeof(__pyx_k_BinanceRestApiManager__save_used), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_BinanceRestApiManager__save_used */
  {__pyx_k_BinanceRestApiManager__save_used_2, sizeof(__pyx_k_BinanceRestApiManager__save_used_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager__save_used_2 */
  {__pyx_k_BinanceRestApiManager_aggregate, sizeof(__pyx_k_BinanceRestApiManager_aggregate), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_aggregate */
  {__pyx_k_BinanceRestApiManager_cancel_all, sizeof(__pyx_k_BinanceRestApiManager_cancel_all), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_cancel_all */
  {__pyx_k_BinanceRestApiManager_cancel_all_2, sizeof(__pyx_k_BinanceRestApiManager_cancel_all_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_cancel_all_2 */
  {__pyx_k_BinanceRestApiManager_cancel_mar, sizeof(__pyx_k_BinanceRestApiManager_cancel_mar), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_cancel_mar */
  {__pyx_k_BinanceRestApiManager_cancel_mar_2, sizeof(__pyx_k_BinanceRestApiManager_cancel_mar_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_cancel_mar_2 */
  {__pyx_k_BinanceRestApiManager_cancel_ord, sizeof(__pyx_k_BinanceRestApiManager_cancel_ord), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_cancel_ord */
  {__pyx_k_BinanceRestApiManager_change_fix, sizeof(__pyx_k_BinanceRestApiManager_change_fix), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_change_fix */
  {__pyx_k_BinanceRestApiManager_create_iso, sizeof(__pyx_k_BinanceRestApiManager_create_iso), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_create_iso */
  {__pyx_k_BinanceRestApiManager_create_mar, sizeof(__pyx_k_BinanceRestApiManager_create_mar), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_create_mar */
  {__pyx_k_BinanceRestApiManager_create_mar_2, sizeof(__pyx_k_BinanceRestApiManager_create_mar_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_create_mar_2 */
  {__pyx_k_BinanceRestApiManager_create_mar_3, sizeof(__pyx_k_BinanceRestApiManager_create_mar_3), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_create_mar_3 */
  {__pyx_k_BinanceRestApiManager_create_oco, sizeof(__pyx_k_BinanceRestApiManager_create_oco), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_create_oco */
  {__pyx_k_BinanceRestApiManager_create_ord, sizeof(__pyx_k_BinanceRestApiManager_create_ord), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_create_ord */
  {__pyx_k_BinanceRestApiManager_create_sub, sizeof(__pyx_k_BinanceRestApiManager_create_sub), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_create_sub */
  {__pyx_k_BinanceRestApiManager_create_tes, sizeof(__pyx_k_BinanceRestApiManager_create_tes), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_create_tes */
  {__pyx_k_BinanceRestApiManager_disable_fa, sizeof(__pyx_k_BinanceRestApiManager_disable_fa), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_disable_fa */
  {__pyx_k_BinanceRestApiManager_enable_fas, sizeof(__pyx_k_BinanceRestApiManager_enable_fas), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_enable_fas */
  {__pyx_k_BinanceRestApiManager_enable_sub, sizeof(__pyx_k_BinanceRestApiManager_enable_sub), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_enable_sub */
  {__pyx_k_BinanceRestApiManager_enable_sub_2, sizeof(__pyx_k_BinanceRestApiManager_enable_sub_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_enable_sub_2 */
  {__pyx_k_BinanceRestApiManager_futures_ac, sizeof(__pyx_k_BinanceRestApiManager_futures_ac), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_ac */
  {__pyx_k_BinanceRestApiManager_futures_ac_2, sizeof(__pyx_k_BinanceRestApiManager_futures_ac_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_ac_2 */
  {__pyx_k_BinanceRestApiManager_futures_ac_3, sizeof(__pyx_k_BinanceRestApiManager_futures_ac_3), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_ac_3 */
  {__pyx_k_BinanceRestApiManager_futures_ac_4, sizeof(__pyx_k_BinanceRestApiManager_futures_ac_4), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_ac_4 */
  {__pyx_k_BinanceRestApiManager_futures_ag, sizeof(__pyx_k_BinanceRestApiManager_futures_ag), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_ag */
  {__pyx_k_BinanceRestApiManager_futures_au, sizeof(__pyx_k_BinanceRestApiManager_futures_au), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_au */
  {__pyx_k_BinanceRestApiManager_futures_ca, sizeof(__pyx_k_BinanceRestApiManager_futures_ca), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_ca */
  {__pyx_k_BinanceRestApiManager_futures_ca_2, sizeof(__pyx_k_BinanceRestApiManager_futures_ca_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_ca_2 */
  {__pyx_k_BinanceRestApiManager_futures_ca_3, sizeof(__pyx_k_BinanceRestApiManager_futures_ca_3), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_ca_3 */
  {__pyx_k_BinanceRestApiManager_futures_ch, sizeof(__pyx_k_BinanceRestApiManager_futures_ch), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_ch */
  {__pyx_k_BinanceRestApiManager_futures_ch_2, sizeof(__pyx_k_BinanceRestApiManager_futures_ch_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_ch_2 */
  {__pyx_k_BinanceRestApiManager_futures_ch_3, sizeof(__pyx_k_BinanceRestApiManager_futures_ch_3), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_ch_3 */
  {__pyx_k_BinanceRestApiManager_futures_ch_4, sizeof(__pyx_k_BinanceRestApiManager_futures_ch_4), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_ch_4 */
  {__pyx_k_BinanceRestApiManager_futures_co, sizeof(__pyx_k_BinanceRestApiManager_futures_co), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_co */
  {__pyx_k_BinanceRestApiManager_futures_co_10, sizeof(__pyx_k_BinanceRestApiManager_futures_co_10), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_co_10 */
  {__pyx_k_BinanceRestApiManager_futures_co_11, sizeof(__pyx_k_BinanceRestApiManager_futures_co_11), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_co_11 */
  {__pyx_k_BinanceRestApiManager_futures_co_12, sizeof(__pyx_k_BinanceRestApiManager_futures_co_12), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_co_12 */
  {__pyx_k_BinanceRestApiManager_futures_co_13, sizeof(__pyx_k_BinanceRestApiManager_futures_co_13), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_co_13 */
  {__pyx_k_BinanceRestApiManager_futures_co_14, sizeof(__pyx_k_BinanceRestApiManager_futures_co_14), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_co_14 */
  {__pyx_k_BinanceRestApiManager_futures_co_15, sizeof(__pyx_k_BinanceRestApiManager_futures_co_15), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_co_15 */
  {__pyx_k_BinanceRestApiManager_futures_co_16, sizeof(__pyx_k_BinanceRestApiManager_futures_co_16), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_co_16 */
  {__pyx_k_BinanceRestApiManager_futures_co_17, sizeof(__pyx_k_BinanceRestApiManager_futures_co_17), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_co_17 */
  {__pyx_k_BinanceRestApiManager_futures_co_18, sizeof(__pyx_k_BinanceRestApiManager_futures_co_18), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_co_18 */
  {__pyx_k_BinanceRestApiManager_futures_co_19, sizeof(__pyx_k_BinanceRestApiManager_futures_co_19), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_co_19 */
  {__pyx_k_BinanceRestApiManager_futures_co_2, sizeof(__pyx_k_BinanceRestApiManager_futures_co_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_co_2 */
  {__pyx_k_BinanceRestApiManager_futures_co_20, sizeof(__pyx_k_BinanceRestApiManager_futures_co_20), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_co_20 */
  {__pyx_k_BinanceRestApiManager_futures_co_21, sizeof(__pyx_k_BinanceRestApiManager_futures_co_21), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_co_21 */
  {__pyx_k_BinanceRestApiManager_futures_co_22, sizeof(__pyx_k_BinanceRestApiManager_futures_co_22), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_co_22 */
  {__pyx_k_BinanceRestApiManager_futures_co_23, sizeof(__pyx_k_BinanceRestApiManager_futures_co_23), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_co_23 */
  {__pyx_k_BinanceRestApiManager_futures_co_24, sizeof(__pyx_k_BinanceRestApiManager_futures_co_24), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_co_24 */
  {__pyx_k_BinanceRestApiManager_futures_co_25, sizeof(__pyx_k_BinanceRestApiManager_futures_co_25), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_co_25 */
  {__pyx_k_BinanceRestApiManager_futures_co_26, sizeof(__pyx_k_BinanceRestApiManager_futures_co_26), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_co_26 */
  {__pyx_k_BinanceRestApiManager_futures_co_27, sizeof(__pyx_k_BinanceRestApiManager_futures_co_27), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_co_27 */
  {__pyx_k_BinanceRestApiManager_futures_co_28, sizeof(__pyx_k_BinanceRestApiManager_futures_co_28), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_co_28 */
  {__pyx_k_BinanceRestApiManager_futures_co_29, sizeof(__pyx_k_BinanceRestApiManager_futures_co_29), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_co_29 */
  {__pyx_k_BinanceRestApiManager_futures_co_3, sizeof(__pyx_k_BinanceRestApiManager_futures_co_3), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_co_3 */
  {__pyx_k_BinanceRestApiManager_futures_co_30, sizeof(__pyx_k_BinanceRestApiManager_futures_co_30), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_co_30 */
  {__pyx_k_BinanceRestApiManager_futures_co_31, sizeof(__pyx_k_BinanceRestApiManager_futures_co_31), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_co_31 */
  {__pyx_k_BinanceRestApiManager_futures_co_32, sizeof(__pyx_k_BinanceRestApiManager_futures_co_32), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_co_32 */
  {__pyx_k_BinanceRestApiManager_futures_co_33, sizeof(__pyx_k_BinanceRestApiManager_futures_co_33), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_co_33 */
  {__pyx_k_BinanceRestApiManager_futures_co_34, sizeof(__pyx_k_BinanceRestApiManager_futures_co_34), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_co_34 */
  {__pyx_k_BinanceRestApiManager_futures_co_35, sizeof(__pyx_k_BinanceRestApiManager_futures_co_35), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_co_35 */
  {__pyx_k_BinanceRestApiManager_futures_co_36, sizeof(__pyx_k_BinanceRestApiManager_futures_co_36), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_co_36 */
  {__pyx_k_BinanceRestApiManager_futures_co_37, sizeof(__pyx_k_BinanceRestApiManager_futures_co_37), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_co_37 */
  {__pyx_k_BinanceRestApiManager_futures_co_38, sizeof(__pyx_k_BinanceRestApiManager_futures_co_38), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_co_38 */
  {__pyx_k_BinanceRestApiManager_futures_co_39, sizeof(__pyx_k_BinanceRestApiManager_futures_co_39), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_co_39 */
  {__pyx_k_BinanceRestApiManager_futures_co_4, sizeof(__pyx_k_BinanceRestApiManager_futures_co_4), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_co_4 */
  {__pyx_k_BinanceRestApiManager_futures_co_40, sizeof(__pyx_k_BinanceRestApiManager_futures_co_40), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_co_40 */
  {__pyx_k_BinanceRestApiManager_futures_co_41, sizeof(__pyx_k_BinanceRestApiManager_futures_co_41), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_co_41 */
  {__pyx_k_BinanceRestApiManager_futures_co_42, sizeof(__pyx_k_BinanceRestApiManager_futures_co_42), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_co_42 */
  {__pyx_k_BinanceRestApiManager_futures_co_43, sizeof(__pyx_k_BinanceRestApiManager_futures_co_43), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_co_43 */
  {__pyx_k_BinanceRestApiManager_futures_co_5, sizeof(__pyx_k_BinanceRestApiManager_futures_co_5), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_co_5 */
  {__pyx_k_BinanceRestApiManager_futures_co_6, sizeof(__pyx_k_BinanceRestApiManager_futures_co_6), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_co_6 */
  {__pyx_k_BinanceRestApiManager_futures_co_7, sizeof(__pyx_k_BinanceRestApiManager_futures_co_7), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_co_7 */
  {__pyx_k_BinanceRestApiManager_futures_co_8, sizeof(__pyx_k_BinanceRestApiManager_futures_co_8), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_co_8 */
  {__pyx_k_BinanceRestApiManager_futures_co_9, sizeof(__pyx_k_BinanceRestApiManager_futures_co_9), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_co_9 */
  {__pyx_k_BinanceRestApiManager_futures_cr, sizeof(__pyx_k_BinanceRestApiManager_futures_cr), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_cr */
  {__pyx_k_BinanceRestApiManager_futures_ex, sizeof(__pyx_k_BinanceRestApiManager_futures_ex), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_ex */
  {__pyx_k_BinanceRestApiManager_futures_fu, sizeof(__pyx_k_BinanceRestApiManager_futures_fu), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_fu */
  {__pyx_k_BinanceRestApiManager_futures_ge, sizeof(__pyx_k_BinanceRestApiManager_futures_ge), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_ge */
  {__pyx_k_BinanceRestApiManager_futures_ge_2, sizeof(__pyx_k_BinanceRestApiManager_futures_ge_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_ge_2 */
  {__pyx_k_BinanceRestApiManager_futures_ge_3, sizeof(__pyx_k_BinanceRestApiManager_futures_ge_3), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_ge_3 */
  {__pyx_k_BinanceRestApiManager_futures_ge_4, sizeof(__pyx_k_BinanceRestApiManager_futures_ge_4), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_ge_4 */
  {__pyx_k_BinanceRestApiManager_futures_hi, sizeof(__pyx_k_BinanceRestApiManager_futures_hi), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_hi */
  {__pyx_k_BinanceRestApiManager_futures_in, sizeof(__pyx_k_BinanceRestApiManager_futures_in), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_in */
  {__pyx_k_BinanceRestApiManager_futures_kl, sizeof(__pyx_k_BinanceRestApiManager_futures_kl), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_kl */
  {__pyx_k_BinanceRestApiManager_futures_le, sizeof(__pyx_k_BinanceRestApiManager_futures_le), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_le */
  {__pyx_k_BinanceRestApiManager_futures_li, sizeof(__pyx_k_BinanceRestApiManager_futures_li), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_li */
  {__pyx_k_BinanceRestApiManager_futures_ma, sizeof(__pyx_k_BinanceRestApiManager_futures_ma), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_ma */
  {__pyx_k_BinanceRestApiManager_futures_op, sizeof(__pyx_k_BinanceRestApiManager_futures_op), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_op */
  {__pyx_k_BinanceRestApiManager_futures_op_2, sizeof(__pyx_k_BinanceRestApiManager_futures_op_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_op_2 */
  {__pyx_k_BinanceRestApiManager_futures_or, sizeof(__pyx_k_BinanceRestApiManager_futures_or), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_or */
  {__pyx_k_BinanceRestApiManager_futures_or_2, sizeof(__pyx_k_BinanceRestApiManager_futures_or_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_or_2 */
  {__pyx_k_BinanceRestApiManager_futures_pi, sizeof(__pyx_k_BinanceRestApiManager_futures_pi), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_pi */
  {__pyx_k_BinanceRestApiManager_futures_pl, sizeof(__pyx_k_BinanceRestApiManager_futures_pl), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_pl */
  {__pyx_k_BinanceRestApiManager_futures_po, sizeof(__pyx_k_BinanceRestApiManager_futures_po), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_po */
  {__pyx_k_BinanceRestApiManager_futures_po_2, sizeof(__pyx_k_BinanceRestApiManager_futures_po_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_po_2 */
  {__pyx_k_BinanceRestApiManager_futures_re, sizeof(__pyx_k_BinanceRestApiManager_futures_re), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_re */
  {__pyx_k_BinanceRestApiManager_futures_st, sizeof(__pyx_k_BinanceRestApiManager_futures_st), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_st */
  {__pyx_k_BinanceRestApiManager_futures_st_2, sizeof(__pyx_k_BinanceRestApiManager_futures_st_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_st_2 */
  {__pyx_k_BinanceRestApiManager_futures_st_3, sizeof(__pyx_k_BinanceRestApiManager_futures_st_3), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_st_3 */
  {__pyx_k_BinanceRestApiManager_futures_sy, sizeof(__pyx_k_BinanceRestApiManager_futures_sy), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_sy */
  {__pyx_k_BinanceRestApiManager_futures_ti, sizeof(__pyx_k_BinanceRestApiManager_futures_ti), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_ti */
  {__pyx_k_BinanceRestApiManager_futures_ti_2, sizeof(__pyx_k_BinanceRestApiManager_futures_ti_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_futures_ti_2 */
  {__pyx_k_BinanceRestApiManager_get_accoun, sizeof(__pyx_k_BinanceRestApiManager_get_accoun), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_accoun */
  {__pyx_k_BinanceRestApiManager_get_accoun_2, sizeof(__pyx_k_BinanceRestApiManager_get_accoun_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_accoun_2 */
  {__pyx_k_BinanceRestApiManager_get_accoun_3, sizeof(__pyx_k_BinanceRestApiManager_get_accoun_3), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_accoun_3 */
  {__pyx_k_BinanceRestApiManager_get_accoun_4, sizeof(__pyx_k_BinanceRestApiManager_get_accoun_4), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_accoun_4 */
  {__pyx_k_BinanceRestApiManager_get_aggreg, sizeof(__pyx_k_BinanceRestApiManager_get_aggreg), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_aggreg */
  {__pyx_k_BinanceRestApiManager_get_all_co, sizeof(__pyx_k_BinanceRestApiManager_get_all_co), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_all_co */
  {__pyx_k_BinanceRestApiManager_get_all_is, sizeof(__pyx_k_BinanceRestApiManager_get_all_is), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_all_is */
  {__pyx_k_BinanceRestApiManager_get_all_ma, sizeof(__pyx_k_BinanceRestApiManager_get_all_ma), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_all_ma */
  {__pyx_k_BinanceRestApiManager_get_all_or, sizeof(__pyx_k_BinanceRestApiManager_get_all_or), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_all_or */
  {__pyx_k_BinanceRestApiManager_get_all_ti, sizeof(__pyx_k_BinanceRestApiManager_get_all_ti), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_all_ti */
  {__pyx_k_BinanceRestApiManager_get_asset, sizeof(__pyx_k_BinanceRestApiManager_get_asset), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_asset */
  {__pyx_k_BinanceRestApiManager_get_asset_2, sizeof(__pyx_k_BinanceRestApiManager_get_asset_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_asset_2 */
  {__pyx_k_BinanceRestApiManager_get_asset_3, sizeof(__pyx_k_BinanceRestApiManager_get_asset_3), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_asset_3 */
  {__pyx_k_BinanceRestApiManager_get_avg_pr, sizeof(__pyx_k_BinanceRestApiManager_get_avg_pr), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_avg_pr */
  {__pyx_k_BinanceRestApiManager_get_bnb_bu, sizeof(__pyx_k_BinanceRestApiManager_get_bnb_bu), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_bnb_bu */
  {__pyx_k_BinanceRestApiManager_get_deposi, sizeof(__pyx_k_BinanceRestApiManager_get_deposi), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_deposi */
  {__pyx_k_BinanceRestApiManager_get_deposi_2, sizeof(__pyx_k_BinanceRestApiManager_get_deposi_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_deposi_2 */
  {__pyx_k_BinanceRestApiManager_get_dust_l, sizeof(__pyx_k_BinanceRestApiManager_get_dust_l), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_dust_l */
  {__pyx_k_BinanceRestApiManager_get_exchan, sizeof(__pyx_k_BinanceRestApiManager_get_exchan), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_exchan */
  {__pyx_k_BinanceRestApiManager_get_fixed, sizeof(__pyx_k_BinanceRestApiManager_get_fixed), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_fixed */
  {__pyx_k_BinanceRestApiManager_get_histor, sizeof(__pyx_k_BinanceRestApiManager_get_histor), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_histor */
  {__pyx_k_BinanceRestApiManager_get_histor_2, sizeof(__pyx_k_BinanceRestApiManager_get_histor_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_histor_2 */
  {__pyx_k_BinanceRestApiManager_get_histor_3, sizeof(__pyx_k_BinanceRestApiManager_get_histor_3), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_histor_3 */
  {__pyx_k_BinanceRestApiManager_get_isolat, sizeof(__pyx_k_BinanceRestApiManager_get_isolat), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_isolat */
  {__pyx_k_BinanceRestApiManager_get_isolat_2, sizeof(__pyx_k_BinanceRestApiManager_get_isolat_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_isolat_2 */
  {__pyx_k_BinanceRestApiManager_get_klines, sizeof(__pyx_k_BinanceRestApiManager_get_klines), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_klines */
  {__pyx_k_BinanceRestApiManager_get_latest, sizeof(__pyx_k_BinanceRestApiManager_get_latest), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_BinanceRestApiManager_get_latest */
  {__pyx_k_BinanceRestApiManager_get_latest_2, sizeof(__pyx_k_BinanceRestApiManager_get_latest_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_latest_2 */
  {__pyx_k_BinanceRestApiManager_get_latest_3, sizeof(__pyx_k_BinanceRestApiManager_get_latest_3), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_latest_3 */
  {__pyx_k_BinanceRestApiManager_get_lendin, sizeof(__pyx_k_BinanceRestApiManager_get_lendin), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_lendin */
  {__pyx_k_BinanceRestApiManager_get_lendin_2, sizeof(__pyx_k_BinanceRestApiManager_get_lendin_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_lendin_2 */
  {__pyx_k_BinanceRestApiManager_get_lendin_3, sizeof(__pyx_k_BinanceRestApiManager_get_lendin_3), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_lendin_3 */
  {__pyx_k_BinanceRestApiManager_get_lendin_4, sizeof(__pyx_k_BinanceRestApiManager_get_lendin_4), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_lendin_4 */
  {__pyx_k_BinanceRestApiManager_get_lendin_5, sizeof(__pyx_k_BinanceRestApiManager_get_lendin_5), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_lendin_5 */
  {__pyx_k_BinanceRestApiManager_get_lendin_6, sizeof(__pyx_k_BinanceRestApiManager_get_lendin_6), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_lendin_6 */
  {__pyx_k_BinanceRestApiManager_get_lendin_7, sizeof(__pyx_k_BinanceRestApiManager_get_lendin_7), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_lendin_7 */
  {__pyx_k_BinanceRestApiManager_get_lendin_8, sizeof(__pyx_k_BinanceRestApiManager_get_lendin_8), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_lendin_8 */
  {__pyx_k_BinanceRestApiManager_get_margin, sizeof(__pyx_k_BinanceRestApiManager_get_margin), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_margin */
  {__pyx_k_BinanceRestApiManager_get_margin_2, sizeof(__pyx_k_BinanceRestApiManager_get_margin_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_margin_2 */
  {__pyx_k_BinanceRestApiManager_get_margin_3, sizeof(__pyx_k_BinanceRestApiManager_get_margin_3), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_margin_3 */
  {__pyx_k_BinanceRestApiManager_get_margin_4, sizeof(__pyx_k_BinanceRestApiManager_get_margin_4), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_margin_4 */
  {__pyx_k_BinanceRestApiManager_get_margin_5, sizeof(__pyx_k_BinanceRestApiManager_get_margin_5), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_margin_5 */
  {__pyx_k_BinanceRestApiManager_get_margin_6, sizeof(__pyx_k_BinanceRestApiManager_get_margin_6), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_margin_6 */
  {__pyx_k_BinanceRestApiManager_get_margin_7, sizeof(__pyx_k_BinanceRestApiManager_get_margin_7), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_margin_7 */
  {__pyx_k_BinanceRestApiManager_get_margin_8, sizeof(__pyx_k_BinanceRestApiManager_get_margin_8), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_margin_8 */
  {__pyx_k_BinanceRestApiManager_get_margin_9, sizeof(__pyx_k_BinanceRestApiManager_get_margin_9), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_margin_9 */
  {__pyx_k_BinanceRestApiManager_get_max_ma, sizeof(__pyx_k_BinanceRestApiManager_get_max_ma), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_max_ma */
  {__pyx_k_BinanceRestApiManager_get_max_ma_2, sizeof(__pyx_k_BinanceRestApiManager_get_max_ma_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_max_ma_2 */
  {__pyx_k_BinanceRestApiManager_get_my_tra, sizeof(__pyx_k_BinanceRestApiManager_get_my_tra), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_my_tra */
  {__pyx_k_BinanceRestApiManager_get_open_i, sizeof(__pyx_k_BinanceRestApiManager_get_open_i), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_open_i */
  {__pyx_k_BinanceRestApiManager_get_open_m, sizeof(__pyx_k_BinanceRestApiManager_get_open_m), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_open_m */
  {__pyx_k_BinanceRestApiManager_get_open_m_2, sizeof(__pyx_k_BinanceRestApiManager_get_open_m_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_open_m_2 */
  {__pyx_k_BinanceRestApiManager_get_open_o, sizeof(__pyx_k_BinanceRestApiManager_get_open_o), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_open_o */
  {__pyx_k_BinanceRestApiManager_get_order, sizeof(__pyx_k_BinanceRestApiManager_get_order), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_order */
  {__pyx_k_BinanceRestApiManager_get_order_2, sizeof(__pyx_k_BinanceRestApiManager_get_order_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_order_2 */
  {__pyx_k_BinanceRestApiManager_get_orderb, sizeof(__pyx_k_BinanceRestApiManager_get_orderb), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_orderb */
  {__pyx_k_BinanceRestApiManager_get_orderb_2, sizeof(__pyx_k_BinanceRestApiManager_get_orderb_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_orderb_2 */
  {__pyx_k_BinanceRestApiManager_get_produc, sizeof(__pyx_k_BinanceRestApiManager_get_produc), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_produc */
  {__pyx_k_BinanceRestApiManager_get_recent, sizeof(__pyx_k_BinanceRestApiManager_get_recent), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_recent */
  {__pyx_k_BinanceRestApiManager_get_server, sizeof(__pyx_k_BinanceRestApiManager_get_server), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_server */
  {__pyx_k_BinanceRestApiManager_get_sub_ac, sizeof(__pyx_k_BinanceRestApiManager_get_sub_ac), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_sub_ac */
  {__pyx_k_BinanceRestApiManager_get_sub_ac_2, sizeof(__pyx_k_BinanceRestApiManager_get_sub_ac_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_sub_ac_2 */
  {__pyx_k_BinanceRestApiManager_get_sub_ac_3, sizeof(__pyx_k_BinanceRestApiManager_get_sub_ac_3), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_sub_ac_3 */
  {__pyx_k_BinanceRestApiManager_get_sub_ac_4, sizeof(__pyx_k_BinanceRestApiManager_get_sub_ac_4), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_sub_ac_4 */
  {__pyx_k_BinanceRestApiManager_get_subacc, sizeof(__pyx_k_BinanceRestApiManager_get_subacc), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_subacc */
  {__pyx_k_BinanceRestApiManager_get_subacc_2, sizeof(__pyx_k_BinanceRestApiManager_get_subacc_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_subacc_2 */
  {__pyx_k_BinanceRestApiManager_get_subacc_3, sizeof(__pyx_k_BinanceRestApiManager_get_subacc_3), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_subacc_3 */
  {__pyx_k_BinanceRestApiManager_get_subacc_4, sizeof(__pyx_k_BinanceRestApiManager_get_subacc_4), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_subacc_4 */
  {__pyx_k_BinanceRestApiManager_get_subacc_5, sizeof(__pyx_k_BinanceRestApiManager_get_subacc_5), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_subacc_5 */
  {__pyx_k_BinanceRestApiManager_get_subacc_6, sizeof(__pyx_k_BinanceRestApiManager_get_subacc_6), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_subacc_6 */
  {__pyx_k_BinanceRestApiManager_get_subacc_7, sizeof(__pyx_k_BinanceRestApiManager_get_subacc_7), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_subacc_7 */
  {__pyx_k_BinanceRestApiManager_get_subacc_8, sizeof(__pyx_k_BinanceRestApiManager_get_subacc_8), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_subacc_8 */
  {__pyx_k_BinanceRestApiManager_get_subacc_9, sizeof(__pyx_k_BinanceRestApiManager_get_subacc_9), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_subacc_9 */
  {__pyx_k_BinanceRestApiManager_get_symbol, sizeof(__pyx_k_BinanceRestApiManager_get_symbol), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_symbol */
  {__pyx_k_BinanceRestApiManager_get_symbol_2, sizeof(__pyx_k_BinanceRestApiManager_get_symbol_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_symbol_2 */
  {__pyx_k_BinanceRestApiManager_get_system, sizeof(__pyx_k_BinanceRestApiManager_get_system), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_system */
  {__pyx_k_BinanceRestApiManager_get_ticker, sizeof(__pyx_k_BinanceRestApiManager_get_ticker), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_ticker */
  {__pyx_k_BinanceRestApiManager_get_trade, sizeof(__pyx_k_BinanceRestApiManager_get_trade), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_trade */
  {__pyx_k_BinanceRestApiManager_get_univer, sizeof(__pyx_k_BinanceRestApiManager_get_univer), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_univer */
  {__pyx_k_BinanceRestApiManager_get_used_w, sizeof(__pyx_k_BinanceRestApiManager_get_used_w), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_used_w */
  {__pyx_k_BinanceRestApiManager_get_user_a, sizeof(__pyx_k_BinanceRestApiManager_get_user_a), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_user_a */
  {__pyx_k_BinanceRestApiManager_get_versio, sizeof(__pyx_k_BinanceRestApiManager_get_versio), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_versio */
  {__pyx_k_BinanceRestApiManager_get_withdr, sizeof(__pyx_k_BinanceRestApiManager_get_withdr), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_withdr */
  {__pyx_k_BinanceRestApiManager_get_withdr_2, sizeof(__pyx_k_BinanceRestApiManager_get_withdr_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_get_withdr_2 */
  {__pyx_k_BinanceRestApiManager_instance, sizeof(__pyx_k_BinanceRestApiManager_instance), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_BinanceRestApiManager_instance */
  {__pyx_k_BinanceRestApiManager_is_update, sizeof(__pyx_k_BinanceRestApiManager_is_update), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_is_update */
  {__pyx_k_BinanceRestApiManager_isolated_m, sizeof(__pyx_k_BinanceRestApiManager_isolated_m), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_isolated_m */
  {__pyx_k_BinanceRestApiManager_isolated_m_2, sizeof(__pyx_k_BinanceRestApiManager_isolated_m_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_isolated_m_2 */
  {__pyx_k_BinanceRestApiManager_isolated_m_3, sizeof(__pyx_k_BinanceRestApiManager_isolated_m_3), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_isolated_m_3 */
  {__pyx_k_BinanceRestApiManager_make_subac, sizeof(__pyx_k_BinanceRestApiManager_make_subac), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_make_subac */
  {__pyx_k_BinanceRestApiManager_make_subac_2, sizeof(__pyx_k_BinanceRestApiManager_make_subac_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_make_subac_2 */
  {__pyx_k_BinanceRestApiManager_make_subac_3, sizeof(__pyx_k_BinanceRestApiManager_make_subac_3), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_make_subac_3 */
  {__pyx_k_BinanceRestApiManager_make_subac_4, sizeof(__pyx_k_BinanceRestApiManager_make_subac_4), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_make_subac_4 */
  {__pyx_k_BinanceRestApiManager_make_unive, sizeof(__pyx_k_BinanceRestApiManager_make_unive), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_make_unive */
  {__pyx_k_BinanceRestApiManager_margin_str, sizeof(__pyx_k_BinanceRestApiManager_margin_str), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_margin_str */
  {__pyx_k_BinanceRestApiManager_margin_str_2, sizeof(__pyx_k_BinanceRestApiManager_margin_str_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_margin_str_2 */
  {__pyx_k_BinanceRestApiManager_margin_str_3, sizeof(__pyx_k_BinanceRestApiManager_margin_str_3), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_margin_str_3 */
  {__pyx_k_BinanceRestApiManager_new_transf, sizeof(__pyx_k_BinanceRestApiManager_new_transf), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_new_transf */
  {__pyx_k_BinanceRestApiManager_order_limi, sizeof(__pyx_k_BinanceRestApiManager_order_limi), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_order_limi */
  {__pyx_k_BinanceRestApiManager_order_limi_2, sizeof(__pyx_k_BinanceRestApiManager_order_limi_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_order_limi_2 */
  {__pyx_k_BinanceRestApiManager_order_limi_3, sizeof(__pyx_k_BinanceRestApiManager_order_limi_3), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_order_limi_3 */
  {__pyx_k_BinanceRestApiManager_order_mark, sizeof(__pyx_k_BinanceRestApiManager_order_mark), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_order_mark */
  {__pyx_k_BinanceRestApiManager_order_mark_2, sizeof(__pyx_k_BinanceRestApiManager_order_mark_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_order_mark_2 */
  {__pyx_k_BinanceRestApiManager_order_mark_3, sizeof(__pyx_k_BinanceRestApiManager_order_mark_3), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_order_mark_3 */
  {__pyx_k_BinanceRestApiManager_order_oco, sizeof(__pyx_k_BinanceRestApiManager_order_oco), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_order_oco */
  {__pyx_k_BinanceRestApiManager_order_oco_2, sizeof(__pyx_k_BinanceRestApiManager_order_oco_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_order_oco_2 */
  {__pyx_k_BinanceRestApiManager_ping, sizeof(__pyx_k_BinanceRestApiManager_ping), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_ping */
  {__pyx_k_BinanceRestApiManager_purchase_l, sizeof(__pyx_k_BinanceRestApiManager_purchase_l), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_purchase_l */
  {__pyx_k_BinanceRestApiManager_query_suba, sizeof(__pyx_k_BinanceRestApiManager_query_suba), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_query_suba */
  {__pyx_k_BinanceRestApiManager_query_univ, sizeof(__pyx_k_BinanceRestApiManager_query_univ), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_query_univ */
  {__pyx_k_BinanceRestApiManager_redeem_len, sizeof(__pyx_k_BinanceRestApiManager_redeem_len), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_redeem_len */
  {__pyx_k_BinanceRestApiManager_repay_marg, sizeof(__pyx_k_BinanceRestApiManager_repay_marg), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_repay_marg */
  {__pyx_k_BinanceRestApiManager_stop_manag, sizeof(__pyx_k_BinanceRestApiManager_stop_manag), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_BinanceRestApiManager_stop_manag */
  {__pyx_k_BinanceRestApiManager_stop_manag_2, sizeof(__pyx_k_BinanceRestApiManager_stop_manag_2), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_BinanceRestApiManager_stop_manag_2 */
  {__pyx_k_BinanceRestApiManager_stop_manag_3, sizeof(__pyx_k_BinanceRestApiManager_stop_manag_3), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_stop_manag_3 */
  {__pyx_k_BinanceRestApiManager_stream_clo, sizeof(__pyx_k_BinanceRestApiManager_stream_clo), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_stream_clo */
  {__pyx_k_BinanceRestApiManager_stream_get, sizeof(__pyx_k_BinanceRestApiManager_stream_get), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_stream_get */
  {__pyx_k_BinanceRestApiManager_stream_kee, sizeof(__pyx_k_BinanceRestApiManager_stream_kee), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_stream_kee */
  {__pyx_k_BinanceRestApiManager_toggle_bnb, sizeof(__pyx_k_BinanceRestApiManager_toggle_bnb), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_toggle_bnb */
  {__pyx_k_BinanceRestApiManager_transfer_d, sizeof(__pyx_k_BinanceRestApiManager_transfer_d), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_transfer_d */
  {__pyx_k_BinanceRestApiManager_transfer_h, sizeof(__pyx_k_BinanceRestApiManager_transfer_h), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_transfer_h */
  {__pyx_k_BinanceRestApiManager_transfer_i, sizeof(__pyx_k_BinanceRestApiManager_transfer_i), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_transfer_i */
  {__pyx_k_BinanceRestApiManager_transfer_m, sizeof(__pyx_k_BinanceRestApiManager_transfer_m), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_transfer_m */
  {__pyx_k_BinanceRestApiManager_transfer_s, sizeof(__pyx_k_BinanceRestApiManager_transfer_s), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_transfer_s */
  {__pyx_k_BinanceRestApiManager_transfer_s_2, sizeof(__pyx_k_BinanceRestApiManager_transfer_s_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_transfer_s_2 */
  {__pyx_k_BinanceRestApiManager_universal, sizeof(__pyx_k_BinanceRestApiManager_universal), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_universal */
  {__pyx_k_BinanceRestApiManager_withdraw, sizeof(__pyx_k_BinanceRestApiManager_withdraw), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceRestApiManager_withdraw */
  {__pyx_k_BinanceWithdrawException, sizeof(__pyx_k_BinanceWithdrawException), 0, 1, 1}, /* PyObject cname: __pyx_n_u_BinanceWithdrawException */
  {__pyx_k_C2C_MAIN, sizeof(__pyx_k_C2C_MAIN), 0, 1, 1}, /* PyObject cname: __pyx_n_u_C2C_MAIN */
  {__pyx_k_C2C_MINING, sizeof(__pyx_k_C2C_MINING), 0, 1, 1}, /* PyObject cname: __pyx_n_u_C2C_MINING */
  {__pyx_k_C2C_UMFUTURE, sizeof(__pyx_k_C2C_UMFUTURE), 0, 1, 1}, /* PyObject cname: __pyx_n_u_C2C_UMFUTURE */
  {__pyx_k_CANCELED, sizeof(__pyx_k_CANCELED), 0, 1, 1}, /* PyObject cname: __pyx_n_u_CANCELED */
  {__pyx_k_CMFUTURE_MAIN, sizeof(__pyx_k_CMFUTURE_MAIN), 0, 1, 1}, /* PyObject cname: __pyx_n_u_CMFUTURE_MAIN */
  {__pyx_k_COIN_FUTURE_TO_SPOT, sizeof(__pyx_k_COIN_FUTURE_TO_SPOT), 0, 1, 1}, /* PyObject cname: __pyx_n_u_COIN_FUTURE_TO_SPOT */
  {__pyx_k_Created_SOCKS5_proxy_URI, sizeof(__pyx_k_Created_SOCKS5_proxy_URI), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_Created_SOCKS5_proxy_URI */
  {__pyx_k_Date, sizeof(__pyx_k_Date), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Date */
  {__pyx_k_EXPIRED, sizeof(__pyx_k_EXPIRED), 0, 1, 1}, /* PyObject cname: __pyx_n_u_EXPIRED */
  {__pyx_k_Entering_with_context_of_Binance, sizeof(__pyx_k_Entering_with_context_of_Binance), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_Entering_with_context_of_Binance */
  {__pyx_k_FIAT_TO_MINING, sizeof(__pyx_k_FIAT_TO_MINING), 0, 1, 1}, /* PyObject cname: __pyx_n_u_FIAT_TO_MINING */
  {__pyx_k_FIAT_TO_SPOT, sizeof(__pyx_k_FIAT_TO_SPOT), 0, 1, 1}, /* PyObject cname: __pyx_n_u_FIAT_TO_SPOT */
  {__pyx_k_FIAT_TO_USDT_FUTURE, sizeof(__pyx_k_FIAT_TO_USDT_FUTURE), 0, 1, 1}, /* PyObject cname: __pyx_n_u_FIAT_TO_USDT_FUTURE */
  {__pyx_k_FILLED, sizeof(__pyx_k_FILLED), 0, 1, 1}, /* PyObject cname: __pyx_n_u_FILLED */
  {__pyx_k_FOK, sizeof(__pyx_k_FOK), 0, 1, 1}, /* PyObject cname: __pyx_n_u_FOK */
  {__pyx_k_FULL, sizeof(__pyx_k_FULL), 0, 1, 1}, /* PyObject cname: __pyx_n_u_FULL */
  {__pyx_k_FUTURES_API_VERSION, sizeof(__pyx_k_FUTURES_API_VERSION), 0, 1, 1}, /* PyObject cname: __pyx_n_u_FUTURES_API_VERSION */
  {__pyx_k_FUTURES_API_VERSION2, sizeof(__pyx_k_FUTURES_API_VERSION2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_FUTURES_API_VERSION2 */
  {__pyx_k_FUTURES_COIN_DATA_URL, sizeof(__pyx_k_FUTURES_COIN_DATA_URL), 0, 1, 1}, /* PyObject cname: __pyx_n_u_FUTURES_COIN_DATA_URL */
  {__pyx_k_FUTURES_COIN_URL, sizeof(__pyx_k_FUTURES_COIN_URL), 0, 1, 1}, /* PyObject cname: __pyx_n_u_FUTURES_COIN_URL */
  {__pyx_k_FUTURES_DATA_URL, sizeof(__pyx_k_FUTURES_DATA_URL), 0, 1, 1}, /* PyObject cname: __pyx_n_u_FUTURES_DATA_URL */
  {__pyx_k_FUTURES_URL, sizeof(__pyx_k_FUTURES_URL), 0, 1, 1}, /* PyObject cname: __pyx_n_u_FUTURES_URL */
  {__pyx_k_GTC, sizeof(__pyx_k_GTC), 0, 1, 1}, /* PyObject cname: __pyx_n_u_GTC */
  {__pyx_k_IOC, sizeof(__pyx_k_IOC), 0, 1, 1}, /* PyObject cname: __pyx_n_u_IOC */
  {__pyx_k_ISOLATED_MARGIN, sizeof(__pyx_k_ISOLATED_MARGIN), 0, 1, 1}, /* PyObject cname: __pyx_n_u_ISOLATED_MARGIN */
  {__pyx_k_Initiating_colorama, sizeof(__pyx_k_Initiating_colorama), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_Initiating_colorama */
  {__pyx_k_Invalid_Response_s, sizeof(__pyx_k_Invalid_Response_s), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_Invalid_Response_s */
  {__pyx_k_KLINE_INTERVAL_12HOUR, sizeof(__pyx_k_KLINE_INTERVAL_12HOUR), 0, 1, 1}, /* PyObject cname: __pyx_n_u_KLINE_INTERVAL_12HOUR */
  {__pyx_k_KLINE_INTERVAL_15MINUTE, sizeof(__pyx_k_KLINE_INTERVAL_15MINUTE), 0, 1, 1}, /* PyObject cname: __pyx_n_u_KLINE_INTERVAL_15MINUTE */
  {__pyx_k_KLINE_INTERVAL_1DAY, sizeof(__pyx_k_KLINE_INTERVAL_1DAY), 0, 1, 1}, /* PyObject cname: __pyx_n_u_KLINE_INTERVAL_1DAY */
  {__pyx_k_KLINE_INTERVAL_1HOUR, sizeof(__pyx_k_KLINE_INTERVAL_1HOUR), 0, 1, 1}, /* PyObject cname: __pyx_n_u_KLINE_INTERVAL_1HOUR */
  {__pyx_k_KLINE_INTERVAL_1MINUTE, sizeof(__pyx_k_KLINE_INTERVAL_1MINUTE), 0, 1, 1}, /* PyObject cname: __pyx_n_u_KLINE_INTERVAL_1MINUTE */
  {__pyx_k_KLINE_INTERVAL_1MONTH, sizeof(__pyx_k_KLINE_INTERVAL_1MONTH), 0, 1, 1}, /* PyObject cname: __pyx_n_u_KLINE_INTERVAL_1MONTH */
  {__pyx_k_KLINE_INTERVAL_1SECOND, sizeof(__pyx_k_KLINE_INTERVAL_1SECOND), 0, 1, 1}, /* PyObject cname: __pyx_n_u_KLINE_INTERVAL_1SECOND */
  {__pyx_k_KLINE_INTERVAL_1WEEK, sizeof(__pyx_k_KLINE_INTERVAL_1WEEK), 0, 1, 1}, /* PyObject cname: __pyx_n_u_KLINE_INTERVAL_1WEEK */
  {__pyx_k_KLINE_INTERVAL_2HOUR, sizeof(__pyx_k_KLINE_INTERVAL_2HOUR), 0, 1, 1}, /* PyObject cname: __pyx_n_u_KLINE_INTERVAL_2HOUR */
  {__pyx_k_KLINE_INTERVAL_30MINUTE, sizeof(__pyx_k_KLINE_INTERVAL_30MINUTE), 0, 1, 1}, /* PyObject cname: __pyx_n_u_KLINE_INTERVAL_30MINUTE */
  {__pyx_k_KLINE_INTERVAL_3DAY, sizeof(__pyx_k_KLINE_INTERVAL_3DAY), 0, 1, 1}, /* PyObject cname: __pyx_n_u_KLINE_INTERVAL_3DAY */
  {__pyx_k_KLINE_INTERVAL_3MINUTE, sizeof(__pyx_k_KLINE_INTERVAL_3MINUTE), 0, 1, 1}, /* PyObject cname: __pyx_n_u_KLINE_INTERVAL_3MINUTE */
  {__pyx_k_KLINE_INTERVAL_4HOUR, sizeof(__pyx_k_KLINE_INTERVAL_4HOUR), 0, 1, 1}, /* PyObject cname: __pyx_n_u_KLINE_INTERVAL_4HOUR */
  {__pyx_k_KLINE_INTERVAL_5MINUTE, sizeof(__pyx_k_KLINE_INTERVAL_5MINUTE), 0, 1, 1}, /* PyObject cname: __pyx_n_u_KLINE_INTERVAL_5MINUTE */
  {__pyx_k_KLINE_INTERVAL_6HOUR, sizeof(__pyx_k_KLINE_INTERVAL_6HOUR), 0, 1, 1}, /* PyObject cname: __pyx_n_u_KLINE_INTERVAL_6HOUR */
  {__pyx_k_KLINE_INTERVAL_8HOUR, sizeof(__pyx_k_KLINE_INTERVAL_8HOUR), 0, 1, 1}, /* PyObject cname: __pyx_n_u_KLINE_INTERVAL_8HOUR */
  {__pyx_k_KeyError, sizeof(__pyx_k_KeyError), 0, 1, 1}, /* PyObject cname: __pyx_n_u_KeyError */
  {__pyx_k_LIMIT, sizeof(__pyx_k_LIMIT), 0, 1, 1}, /* PyObject cname: __pyx_n_u_LIMIT */
  {__pyx_k_LIMIT_MAKER, sizeof(__pyx_k_LIMIT_MAKER), 0, 1, 1}, /* PyObject cname: __pyx_n_u_LIMIT_MAKER */
  {__pyx_k_Leaving_with_context_of_BinanceR, sizeof(__pyx_k_Leaving_with_context_of_BinanceR), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_Leaving_with_context_of_BinanceR */
  {__pyx_k_M, sizeof(__pyx_k_M), 0, 1, 1}, /* PyObject cname: __pyx_n_u_M */
  {__pyx_k_MAIN_C2C, sizeof(__pyx_k_MAIN_C2C), 0, 1, 1}, /* PyObject cname: __pyx_n_u_MAIN_C2C */
  {__pyx_k_MAIN_CMFUTURE, sizeof(__pyx_k_MAIN_CMFUTURE), 0, 1, 1}, /* PyObject cname: __pyx_n_u_MAIN_CMFUTURE */
  {__pyx_k_MAIN_MARGIN, sizeof(__pyx_k_MAIN_MARGIN), 0, 1, 1}, /* PyObject cname: __pyx_n_u_MAIN_MARGIN */
  {__pyx_k_MAIN_MINING, sizeof(__pyx_k_MAIN_MINING), 0, 1, 1}, /* PyObject cname: __pyx_n_u_MAIN_MINING */
  {__pyx_k_MAIN_UMFUTURE, sizeof(__pyx_k_MAIN_UMFUTURE), 0, 1, 1}, /* PyObject cname: __pyx_n_u_MAIN_UMFUTURE */
  {__pyx_k_MARGIN_API_URL, sizeof(__pyx_k_MARGIN_API_URL), 0, 1, 1}, /* PyObject cname: __pyx_n_u_MARGIN_API_URL */
  {__pyx_k_MARGIN_API_VERSION, sizeof(__pyx_k_MARGIN_API_VERSION), 0, 1, 1}, /* PyObject cname: __pyx_n_u_MARGIN_API_VERSION */
  {__pyx_k_MARGIN_CROSS_TO_SPOT, sizeof(__pyx_k_MARGIN_CROSS_TO_SPOT), 0, 1, 1}, /* PyObject cname: __pyx_n_u_MARGIN_CROSS_TO_SPOT */
  {__pyx_k_MARGIN_CROSS_TO_USDT_FUTURE, sizeof(__pyx_k_MARGIN_CROSS_TO_USDT_FUTURE), 0, 1, 1}, /* PyObject cname: __pyx_n_u_MARGIN_CROSS_TO_USDT_FUTURE */
  {__pyx_k_MARGIN_MAIN, sizeof(__pyx_k_MARGIN_MAIN), 0, 1, 1}, /* PyObject cname: __pyx_n_u_MARGIN_MAIN */
  {__pyx_k_MARGIN_UMFUTURE, sizeof(__pyx_k_MARGIN_UMFUTURE), 0, 1, 1}, /* PyObject cname: __pyx_n_u_MARGIN_UMFUTURE */
  {__pyx_k_MARKET, sizeof(__pyx_k_MARKET), 0, 1, 1}, /* PyObject cname: __pyx_n_u_MARKET */
  {__pyx_k_MINING_C2C, sizeof(__pyx_k_MINING_C2C), 0, 1, 1}, /* PyObject cname: __pyx_n_u_MINING_C2C */
  {__pyx_k_MINING_MAIN, sizeof(__pyx_k_MINING_MAIN), 0, 1, 1}, /* PyObject cname: __pyx_n_u_MINING_MAIN */
  {__pyx_k_MINING_TO_FIAT, sizeof(__pyx_k_MINING_TO_FIAT), 0, 1, 1}, /* PyObject cname: __pyx_n_u_MINING_TO_FIAT */
  {__pyx_k_MINING_TO_SPOT, sizeof(__pyx_k_MINING_TO_SPOT), 0, 1, 1}, /* PyObject cname: __pyx_n_u_MINING_TO_SPOT */
  {__pyx_k_MINING_TO_USDT_FUTURE, sizeof(__pyx_k_MINING_TO_USDT_FUTURE), 0, 1, 1}, /* PyObject cname: __pyx_n_u_MINING_TO_USDT_FUTURE */
  {__pyx_k_MINING_UMFUTURE, sizeof(__pyx_k_MINING_UMFUTURE), 0, 1, 1}, /* PyObject cname: __pyx_n_u_MINING_UMFUTURE */
  {__pyx_k_NEW, sizeof(__pyx_k_NEW), 0, 1, 1}, /* PyObject cname: __pyx_n_u_NEW */
  {__pyx_k_New_instance_of, sizeof(__pyx_k_New_instance_of), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_New_instance_of */
  {__pyx_k_None, sizeof(__pyx_k_None), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_None */
  {__pyx_k_Note_that_Cython_is_deliberately, sizeof(__pyx_k_Note_that_Cython_is_deliberately), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_Note_that_Cython_is_deliberately */
  {__pyx_k_ORDER_RESP_TYPE_ACK, sizeof(__pyx_k_ORDER_RESP_TYPE_ACK), 0, 1, 1}, /* PyObject cname: __pyx_n_u_ORDER_RESP_TYPE_ACK */
  {__pyx_k_ORDER_RESP_TYPE_FULL, sizeof(__pyx_k_ORDER_RESP_TYPE_FULL), 0, 1, 1}, /* PyObject cname: __pyx_n_u_ORDER_RESP_TYPE_FULL */
  {__pyx_k_ORDER_RESP_TYPE_RESULT, sizeof(__pyx_k_ORDER_RESP_TYPE_RESULT), 0, 1, 1}, /* PyObject cname: __pyx_n_u_ORDER_RESP_TYPE_RESULT */
  {__pyx_k_ORDER_STATUS_CANCELED, sizeof(__pyx_k_ORDER_STATUS_CANCELED), 0, 1, 1}, /* PyObject cname: __pyx_n_u_ORDER_STATUS_CANCELED */
  {__pyx_k_ORDER_STATUS_EXPIRED, sizeof(__pyx_k_ORDER_STATUS_EXPIRED), 0, 1, 1}, /* PyObject cname: __pyx_n_u_ORDER_STATUS_EXPIRED */
  {__pyx_k_ORDER_STATUS_FILLED, sizeof(__pyx_k_ORDER_STATUS_FILLED), 0, 1, 1}, /* PyObject cname: __pyx_n_u_ORDER_STATUS_FILLED */
  {__pyx_k_ORDER_STATUS_NEW, sizeof(__pyx_k_ORDER_STATUS_NEW), 0, 1, 1}, /* PyObject cname: __pyx_n_u_ORDER_STATUS_NEW */
  {__pyx_k_ORDER_STATUS_PARTIALLY_FILLED, sizeof(__pyx_k_ORDER_STATUS_PARTIALLY_FILLED), 0, 1, 1}, /* PyObject cname: __pyx_n_u_ORDER_STATUS_PARTIALLY_FILLED */
  {__pyx_k_ORDER_STATUS_PENDING_CANCEL, sizeof(__pyx_k_ORDER_STATUS_PENDING_CANCEL), 0, 1, 1}, /* PyObject cname: __pyx_n_u_ORDER_STATUS_PENDING_CANCEL */
  {__pyx_k_ORDER_STATUS_REJECTED, sizeof(__pyx_k_ORDER_STATUS_REJECTED), 0, 1, 1}, /* PyObject cname: __pyx_n_u_ORDER_STATUS_REJECTED */
  {__pyx_k_ORDER_TYPE_LIMIT, sizeof(__pyx_k_ORDER_TYPE_LIMIT), 0, 1, 1}, /* PyObject cname: __pyx_n_u_ORDER_TYPE_LIMIT */
  {__pyx_k_ORDER_TYPE_LIMIT_MAKER, sizeof(__pyx_k_ORDER_TYPE_LIMIT_MAKER), 0, 1, 1}, /* PyObject cname: __pyx_n_u_ORDER_TYPE_LIMIT_MAKER */
  {__pyx_k_ORDER_TYPE_MARKET, sizeof(__pyx_k_ORDER_TYPE_MARKET), 0, 1, 1}, /* PyObject cname: __pyx_n_u_ORDER_TYPE_MARKET */
  {__pyx_k_ORDER_TYPE_STOP_LOSS, sizeof(__pyx_k_ORDER_TYPE_STOP_LOSS), 0, 1, 1}, /* PyObject cname: __pyx_n_u_ORDER_TYPE_STOP_LOSS */
  {__pyx_k_ORDER_TYPE_STOP_LOSS_LIMIT, sizeof(__pyx_k_ORDER_TYPE_STOP_LOSS_LIMIT), 0, 1, 1}, /* PyObject cname: __pyx_n_u_ORDER_TYPE_STOP_LOSS_LIMIT */
  {__pyx_k_ORDER_TYPE_TAKE_PROFIT, sizeof(__pyx_k_ORDER_TYPE_TAKE_PROFIT), 0, 1, 1}, /* PyObject cname: __pyx_n_u_ORDER_TYPE_TAKE_PROFIT */
  {__pyx_k_ORDER_TYPE_TAKE_PROFIT_LIMIT, sizeof(__pyx_k_ORDER_TYPE_TAKE_PROFIT_LIMIT), 0, 1, 1}, /* PyObject cname: __pyx_n_u_ORDER_TYPE_TAKE_PROFIT_LIMIT */
  {__pyx_k_Optional, sizeof(__pyx_k_Optional), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Optional */
  {__pyx_k_Optional_bool, sizeof(__pyx_k_Optional_bool), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_Optional_bool */
  {__pyx_k_Optional_dict, sizeof(__pyx_k_Optional_dict), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_Optional_dict */
  {__pyx_k_Optional_float, sizeof(__pyx_k_Optional_float), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_Optional_float */
  {__pyx_k_Optional_str, sizeof(__pyx_k_Optional_str), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_Optional_str */
  {__pyx_k_PARTIALLY_FILLED, sizeof(__pyx_k_PARTIALLY_FILLED), 0, 1, 1}, /* PyObject cname: __pyx_n_u_PARTIALLY_FILLED */
  {__pyx_k_PENDING_CANCEL, sizeof(__pyx_k_PENDING_CANCEL), 0, 1, 1}, /* PyObject cname: __pyx_n_u_PENDING_CANCEL */
  {__pyx_k_PRIVATE_API_VERSION, sizeof(__pyx_k_PRIVATE_API_VERSION), 0, 1, 1}, /* PyObject cname: __pyx_n_u_PRIVATE_API_VERSION */
  {__pyx_k_PUBLIC_API_VERSION, sizeof(__pyx_k_PUBLIC_API_VERSION), 0, 1, 1}, /* PyObject cname: __pyx_n_u_PUBLIC_API_VERSION */
  {__pyx_k_REJECTED, sizeof(__pyx_k_REJECTED), 0, 1, 1}, /* PyObject cname: __pyx_n_u_REJECTED */
  {__pyx_k_RESULT, sizeof(__pyx_k_RESULT), 0, 1, 1}, /* PyObject cname: __pyx_n_u_RESULT */
  {__pyx_k_Read_the_docs_to_see_a_list_of, sizeof(__pyx_k_Read_the_docs_to_see_a_list_of), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_Read_the_docs_to_see_a_list_of */
  {__pyx_k_Release, sizeof(__pyx_k_Release), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_Release */
  {__pyx_k_SELL, sizeof(__pyx_k_SELL), 0, 1, 1}, /* PyObject cname: __pyx_n_u_SELL */
  {__pyx_k_SIDE_BUY, sizeof(__pyx_k_SIDE_BUY), 0, 1, 1}, /* PyObject cname: __pyx_n_u_SIDE_BUY */
  {__pyx_k_SIDE_SELL, sizeof(__pyx_k_SIDE_SELL), 0, 1, 1}, /* PyObject cname: __pyx_n_u_SIDE_SELL */
  {__pyx_k_SPOT, sizeof(__pyx_k_SPOT), 0, 1, 1}, /* PyObject cname: __pyx_n_u_SPOT */
  {__pyx_k_SPOT_TO_COIN_FUTURE, sizeof(__pyx_k_SPOT_TO_COIN_FUTURE), 0, 1, 1}, /* PyObject cname: __pyx_n_u_SPOT_TO_COIN_FUTURE */
  {__pyx_k_SPOT_TO_FIAT, sizeof(__pyx_k_SPOT_TO_FIAT), 0, 1, 1}, /* PyObject cname: __pyx_n_u_SPOT_TO_FIAT */
  {__pyx_k_SPOT_TO_MARGIN_CROSS, sizeof(__pyx_k_SPOT_TO_MARGIN_CROSS), 0, 1, 1}, /* PyObject cname: __pyx_n_u_SPOT_TO_MARGIN_CROSS */
  {__pyx_k_SPOT_TO_MINING, sizeof(__pyx_k_SPOT_TO_MINING), 0, 1, 1}, /* PyObject cname: __pyx_n_u_SPOT_TO_MINING */
  {__pyx_k_SPOT_TO_USDT_FUTURE, sizeof(__pyx_k_SPOT_TO_USDT_FUTURE), 0, 1, 1}, /* PyObject cname: __pyx_n_u_SPOT_TO_USDT_FUTURE */
  {__pyx_k_STOP_LOSS, sizeof(__pyx_k_STOP_LOSS), 0, 1, 1}, /* PyObject cname: __pyx_n_u_STOP_LOSS */
  {__pyx_k_STOP_LOSS_LIMIT, sizeof(__pyx_k_STOP_LOSS_LIMIT), 0, 1, 1}, /* PyObject cname: __pyx_n_u_STOP_LOSS_LIMIT */
  {__pyx_k_SYMBOL_TYPE_SPOT, sizeof(__pyx_k_SYMBOL_TYPE_SPOT), 0, 1, 1}, /* PyObject cname: __pyx_n_u_SYMBOL_TYPE_SPOT */
  {__pyx_k_T, sizeof(__pyx_k_T), 0, 1, 1}, /* PyObject cname: __pyx_n_u_T */
  {__pyx_k_TAKE_PROFIT, sizeof(__pyx_k_TAKE_PROFIT), 0, 1, 1}, /* PyObject cname: __pyx_n_u_TAKE_PROFIT */
  {__pyx_k_TAKE_PROFIT_LIMIT, sizeof(__pyx_k_TAKE_PROFIT_LIMIT), 0, 1, 1}, /* PyObject cname: __pyx_n_u_TAKE_PROFIT_LIMIT */
  {__pyx_k_TIME_IN_FORCE_FOK, sizeof(__pyx_k_TIME_IN_FORCE_FOK), 0, 1, 1}, /* PyObject cname: __pyx_n_u_TIME_IN_FORCE_FOK */
  {__pyx_k_TIME_IN_FORCE_GTC, sizeof(__pyx_k_TIME_IN_FORCE_GTC), 0, 1, 1}, /* PyObject cname: __pyx_n_u_TIME_IN_FORCE_GTC */
  {__pyx_k_TIME_IN_FORCE_IOC, sizeof(__pyx_k_TIME_IN_FORCE_IOC), 0, 1, 1}, /* PyObject cname: __pyx_n_u_TIME_IN_FORCE_IOC */
  {__pyx_k_The_parameter_BinanceRestApiMana, sizeof(__pyx_k_The_parameter_BinanceRestApiMana), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_The_parameter_BinanceRestApiMana */
  {__pyx_k_There_is_no_entry_with_withdraw, sizeof(__pyx_k_There_is_no_entry_with_withdraw), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_There_is_no_entry_with_withdraw */
  {__pyx_k_UMFUTURE_C2C, sizeof(__pyx_k_UMFUTURE_C2C), 0, 1, 1}, /* PyObject cname: __pyx_n_u_UMFUTURE_C2C */
  {__pyx_k_UMFUTURE_MAIN, sizeof(__pyx_k_UMFUTURE_MAIN), 0, 1, 1}, /* PyObject cname: __pyx_n_u_UMFUTURE_MAIN */
  {__pyx_k_UMFUTURE_MARGIN, sizeof(__pyx_k_UMFUTURE_MARGIN), 0, 1, 1}, /* PyObject cname: __pyx_n_u_UMFUTURE_MARGIN */
  {__pyx_k_USDT_FUTURE_TO_FIAT, sizeof(__pyx_k_USDT_FUTURE_TO_FIAT), 0, 1, 1}, /* PyObject cname: __pyx_n_u_USDT_FUTURE_TO_FIAT */
  {__pyx_k_USDT_FUTURE_TO_MARGIN_CROSS, sizeof(__pyx_k_USDT_FUTURE_TO_MARGIN_CROSS), 0, 1, 1}, /* PyObject cname: __pyx_n_u_USDT_FUTURE_TO_MARGIN_CROSS */
  {__pyx_k_USDT_FUTURE_TO_SPOT, sizeof(__pyx_k_USDT_FUTURE_TO_SPOT), 0, 1, 1}, /* PyObject cname: __pyx_n_u_USDT_FUTURE_TO_SPOT */
  {__pyx_k_UnknownExchange, sizeof(__pyx_k_UnknownExchange), 0, 1, 1}, /* PyObject cname: __pyx_n_u_UnknownExchange */
  {__pyx_k_Unknown_exchange, sizeof(__pyx_k_Unknown_exchange), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_Unknown_exchange */
  {__pyx_k_User_Agent, sizeof(__pyx_k_User_Agent), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_User_Agent */
  {__pyx_k_ValueError, sizeof(__pyx_k_ValueError), 0, 1, 1}, /* PyObject cname: __pyx_n_u_ValueError */
  {__pyx_k_WEBSITE_URL, sizeof(__pyx_k_WEBSITE_URL), 0, 1, 1}, /* PyObject cname: __pyx_n_u_WEBSITE_URL */
  {__pyx_k_X_MBX_APIKEY, sizeof(__pyx_k_X_MBX_APIKEY), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_X_MBX_APIKEY */
  {__pyx_k_X_MBX_USED_WEIGHT, sizeof(__pyx_k_X_MBX_USED_WEIGHT), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_X_MBX_USED_WEIGHT */
  {__pyx_k__10, sizeof(__pyx_k__10), 0, 1, 0}, /* PyObject cname: __pyx_kp_u__10 */
  {__pyx_k__11, sizeof(__pyx_k__11), 0, 1, 0}, /* PyObject cname: __pyx_kp_u__11 */
  {__pyx_k__12, sizeof(__pyx_k__12), 0, 1, 1}, /* PyObject cname: __pyx_n_u__12 */
  {__pyx_k__13, sizeof(__pyx_k__13), 0, 1, 0}, /* PyObject cname: __pyx_kp_u__13 */
  {__pyx_k__2, sizeof(__pyx_k__2), 0, 1, 0}, /* PyObject cname: __pyx_kp_u__2 */
  {__pyx_k__3, sizeof(__pyx_k__3), 0, 1, 0}, /* PyObject cname: __pyx_kp_u__3 */
  {__pyx_k__4, sizeof(__pyx_k__4), 0, 1, 0}, /* PyObject cname: __pyx_kp_u__4 */
  {__pyx_k__5, sizeof(__pyx_k__5), 0, 1, 1}, /* PyObject cname: __pyx_n_u__5 */
  {__pyx_k__6, sizeof(__pyx_k__6), 0, 1, 0}, /* PyObject cname: __pyx_kp_u__6 */
  {__pyx_k__7, sizeof(__pyx_k__7), 0, 1, 0}, /* PyObject cname: __pyx_kp_u__7 */
  {__pyx_k__8, sizeof(__pyx_k__8), 0, 1, 0}, /* PyObject cname: __pyx_kp_u__8 */
  {__pyx_k__9, sizeof(__pyx_k__9), 0, 1, 0}, /* PyObject cname: __pyx_kp_u__9 */
  {__pyx_k_a, sizeof(__pyx_k_a), 0, 1, 1}, /* PyObject cname: __pyx_n_u_a */
  {__pyx_k_a_d_b_Y_H_M_S_GMT, sizeof(__pyx_k_a_d_b_Y_H_M_S_GMT), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_a_d_b_Y_H_M_S_GMT */
  {__pyx_k_account, sizeof(__pyx_k_account), 0, 1, 1}, /* PyObject cname: __pyx_n_u_account */
  {__pyx_k_accountSnapshot, sizeof(__pyx_k_accountSnapshot), 0, 1, 1}, /* PyObject cname: __pyx_n_u_accountSnapshot */
  {__pyx_k_account_apiTradingStatus, sizeof(__pyx_k_account_apiTradingStatus), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_account_apiTradingStatus */
  {__pyx_k_account_status, sizeof(__pyx_k_account_status), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_account_status */
  {__pyx_k_add_note, sizeof(__pyx_k_add_note), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_add_note */
  {__pyx_k_aggTrades, sizeof(__pyx_k_aggTrades), 0, 1, 1}, /* PyObject cname: __pyx_n_u_aggTrades */
  {__pyx_k_aggregate_trade_iter, sizeof(__pyx_k_aggregate_trade_iter), 0, 1, 1}, /* PyObject cname: __pyx_n_u_aggregate_trade_iter */
  {__pyx_k_allForceOrders, sizeof(__pyx_k_allForceOrders), 0, 1, 1}, /* PyObject cname: __pyx_n_u_allForceOrders */
  {__pyx_k_allOpenOrders, sizeof(__pyx_k_allOpenOrders), 0, 1, 1}, /* PyObject cname: __pyx_n_u_allOpenOrders */
  {__pyx_k_allOrders, sizeof(__pyx_k_allOrders), 0, 1, 1}, /* PyObject cname: __pyx_n_u_allOrders */
  {__pyx_k_api_key, sizeof(__pyx_k_api_key), 0, 1, 1}, /* PyObject cname: __pyx_n_u_api_key */
  {__pyx_k_api_secret, sizeof(__pyx_k_api_secret), 0, 1, 1}, /* PyObject cname: __pyx_n_u_api_secret */
  {__pyx_k_app_name, sizeof(__pyx_k_app_name), 0, 1, 1}, /* PyObject cname: __pyx_n_u_app_name */
  {__pyx_k_application_json, sizeof(__pyx_k_application_json), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_application_json */
  {__pyx_k_asset, sizeof(__pyx_k_asset), 0, 1, 1}, /* PyObject cname: __pyx_n_u_asset */
  {__pyx_k_asset_assetDetail, sizeof(__pyx_k_asset_assetDetail), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_asset_assetDetail */
  {__pyx_k_asset_assetDividend, sizeof(__pyx_k_asset_assetDividend), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_asset_assetDividend */
  {__pyx_k_asset_dribblet, sizeof(__pyx_k_asset_dribblet), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_asset_dribblet */
  {__pyx_k_asset_dust, sizeof(__pyx_k_asset_dust), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_asset_dust */
  {__pyx_k_asset_tradeFee, sizeof(__pyx_k_asset_tradeFee), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_asset_tradeFee */
  {__pyx_k_asset_transfer, sizeof(__pyx_k_asset_transfer), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_asset_transfer */
  {__pyx_k_asyncio_coroutines, sizeof(__pyx_k_asyncio_coroutines), 0, 1, 1}, /* PyObject cname: __pyx_n_u_asyncio_coroutines */
  {__pyx_k_avgPrice, sizeof(__pyx_k_avgPrice), 0, 1, 1}, /* PyObject cname: __pyx_n_u_avgPrice */
  {__pyx_k_bal, sizeof(__pyx_k_bal), 0, 1, 1}, /* PyObject cname: __pyx_n_u_bal */
  {__pyx_k_balance, sizeof(__pyx_k_balance), 0, 1, 1}, /* PyObject cname: __pyx_n_u_balance */
  {__pyx_k_balances, sizeof(__pyx_k_balances), 0, 1, 1}, /* PyObject cname: __pyx_n_u_balances */
  {__pyx_k_batchOrders, sizeof(__pyx_k_batchOrders), 0, 1, 1}, /* PyObject cname: __pyx_n_u_batchOrders */
  {__pyx_k_binance_com, sizeof(__pyx_k_binance_com), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_binance_com */
  {__pyx_k_binance_com_coin_futures, sizeof(__pyx_k_binance_com_coin_futures), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_binance_com_coin_futures */
  {__pyx_k_binance_com_coin_futures_2, sizeof(__pyx_k_binance_com_coin_futures_2), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_binance_com_coin_futures_2 */
  {__pyx_k_binance_com_futures, sizeof(__pyx_k_binance_com_futures), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_binance_com_futures */
  {__pyx_k_binance_com_futures_testnet, sizeof(__pyx_k_binance_com_futures_testnet), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_binance_com_futures_testnet */
  {__pyx_k_binance_com_isolated_margin, sizeof(__pyx_k_binance_com_isolated_margin), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_binance_com_isolated_margin */
  {__pyx_k_binance_com_isolated_margin_test, sizeof(__pyx_k_binance_com_isolated_margin_test), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_binance_com_isolated_margin_test */
  {__pyx_k_binance_com_margin, sizeof(__pyx_k_binance_com_margin), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_binance_com_margin */
  {__pyx_k_binance_com_margin_testnet, sizeof(__pyx_k_binance_com_margin_testnet), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_binance_com_margin_testnet */
  {__pyx_k_binance_com_testnet, sizeof(__pyx_k_binance_com_testnet), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_binance_com_testnet */
  {__pyx_k_binance_us, sizeof(__pyx_k_binance_us), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_binance_us */
  {__pyx_k_bnbBurn, sizeof(__pyx_k_bnbBurn), 0, 1, 1}, /* PyObject cname: __pyx_n_u_bnbBurn */
  {__pyx_k_bool, sizeof(__pyx_k_bool), 0, 1, 1}, /* PyObject cname: __pyx_n_u_bool */
  {__pyx_k_cached, sizeof(__pyx_k_cached), 0, 1, 1}, /* PyObject cname: __pyx_n_u_cached */
  {__pyx_k_cached_timeout, sizeof(__pyx_k_cached_timeout), 0, 1, 1}, /* PyObject cname: __pyx_n_u_cached_timeout */
  {__pyx_k_cancel_all_open_margin_orders, sizeof(__pyx_k_cancel_all_open_margin_orders), 0, 1, 1}, /* PyObject cname: __pyx_n_u_cancel_all_open_margin_orders */
  {__pyx_k_cancel_all_open_orders, sizeof(__pyx_k_cancel_all_open_orders), 0, 1, 1}, /* PyObject cname: __pyx_n_u_cancel_all_open_orders */
  {__pyx_k_cancel_margin_oco_order, sizeof(__pyx_k_cancel_margin_oco_order), 0, 1, 1}, /* PyObject cname: __pyx_n_u_cancel_margin_oco_order */
  {__pyx_k_cancel_margin_order, sizeof(__pyx_k_cancel_margin_order), 0, 1, 1}, /* PyObject cname: __pyx_n_u_cancel_margin_order */
  {__pyx_k_cancel_order, sizeof(__pyx_k_cancel_order), 0, 1, 1}, /* PyObject cname: __pyx_n_u_cancel_order */
  {__pyx_k_capital_config_getall, sizeof(__pyx_k_capital_config_getall), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_capital_config_getall */
  {__pyx_k_capital_deposit_address, sizeof(__pyx_k_capital_deposit_address), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_capital_deposit_address */
  {__pyx_k_capital_deposit_hisrec, sizeof(__pyx_k_capital_deposit_hisrec), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_capital_deposit_hisrec */
  {__pyx_k_capital_deposit_subAddress, sizeof(__pyx_k_capital_deposit_subAddress), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_capital_deposit_subAddress */
  {__pyx_k_capital_deposit_subHisrec, sizeof(__pyx_k_capital_deposit_subHisrec), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_capital_deposit_subHisrec */
  {__pyx_k_capital_withdraw_apply, sizeof(__pyx_k_capital_withdraw_apply), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_capital_withdraw_apply */
  {__pyx_k_capital_withdraw_history, sizeof(__pyx_k_capital_withdraw_history), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_capital_withdraw_history */
  {__pyx_k_change_fixed_activity_to_daily_p, sizeof(__pyx_k_change_fixed_activity_to_daily_p), 0, 1, 1}, /* PyObject cname: __pyx_n_u_change_fixed_activity_to_daily_p */
  {__pyx_k_class_getitem, sizeof(__pyx_k_class_getitem), 0, 1, 1}, /* PyObject cname: __pyx_n_u_class_getitem */
  {__pyx_k_cline_in_traceback, sizeof(__pyx_k_cline_in_traceback), 0, 1, 1}, /* PyObject cname: __pyx_n_u_cline_in_traceback */
  {__pyx_k_close, sizeof(__pyx_k_close), 0, 1, 1}, /* PyObject cname: __pyx_n_u_close */
  {__pyx_k_colorama, sizeof(__pyx_k_colorama), 0, 1, 1}, /* PyObject cname: __pyx_n_u_colorama */
  {__pyx_k_commissionRate, sizeof(__pyx_k_commissionRate), 0, 1, 1}, /* PyObject cname: __pyx_n_u_commissionRate */
  {__pyx_k_compiled_on, sizeof(__pyx_k_compiled_on), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_compiled_on */
  {__pyx_k_continuousKlines, sizeof(__pyx_k_continuousKlines), 0, 1, 1}, /* PyObject cname: __pyx_n_u_continuousKlines */
  {__pyx_k_countdownCancelAll, sizeof(__pyx_k_countdownCancelAll), 0, 1, 1}, /* PyObject cname: __pyx_n_u_countdownCancelAll */
  {__pyx_k_create_api_uri, sizeof(__pyx_k_create_api_uri), 0, 1, 1}, /* PyObject cname: __pyx_n_u_create_api_uri */
  {__pyx_k_create_futures_api_uri, sizeof(__pyx_k_create_futures_api_uri), 0, 1, 1}, /* PyObject cname: __pyx_n_u_create_futures_api_uri */
  {__pyx_k_create_futures_coin_api_url, sizeof(__pyx_k_create_futures_coin_api_url), 0, 1, 1}, /* PyObject cname: __pyx_n_u_create_futures_coin_api_url */
  {__pyx_k_create_futures_coin_data_api_ur, sizeof(__pyx_k_create_futures_coin_data_api_ur), 0, 1, 1}, /* PyObject cname: __pyx_n_u_create_futures_coin_data_api_ur */
  {__pyx_k_create_futures_data_api_uri, sizeof(__pyx_k_create_futures_data_api_uri), 0, 1, 1}, /* PyObject cname: __pyx_n_u_create_futures_data_api_uri */
  {__pyx_k_create_isolated_margin_account, sizeof(__pyx_k_create_isolated_margin_account), 0, 1, 1}, /* PyObject cname: __pyx_n_u_create_isolated_margin_account */
  {__pyx_k_create_margin_api_uri, sizeof(__pyx_k_create_margin_api_uri), 0, 1, 1}, /* PyObject cname: __pyx_n_u_create_margin_api_uri */
  {__pyx_k_create_margin_loan, sizeof(__pyx_k_create_margin_loan), 0, 1, 1}, /* PyObject cname: __pyx_n_u_create_margin_loan */
  {__pyx_k_create_margin_oco_order, sizeof(__pyx_k_create_margin_oco_order), 0, 1, 1}, /* PyObject cname: __pyx_n_u_create_margin_oco_order */
  {__pyx_k_create_margin_order, sizeof(__pyx_k_create_margin_order), 0, 1, 1}, /* PyObject cname: __pyx_n_u_create_margin_order */
  {__pyx_k_create_oco_order, sizeof(__pyx_k_create_oco_order), 0, 1, 1}, /* PyObject cname: __pyx_n_u_create_oco_order */
  {__pyx_k_create_order, sizeof(__pyx_k_create_order), 0, 1, 1}, /* PyObject cname: __pyx_n_u_create_order */
  {__pyx_k_create_sub_account_futures_trans, sizeof(__pyx_k_create_sub_account_futures_trans), 0, 1, 1}, /* PyObject cname: __pyx_n_u_create_sub_account_futures_trans */
  {__pyx_k_create_test_order, sizeof(__pyx_k_create_test_order), 0, 1, 1}, /* PyObject cname: __pyx_n_u_create_test_order */
  {__pyx_k_create_website_uri, sizeof(__pyx_k_create_website_uri), 0, 1, 1}, /* PyObject cname: __pyx_n_u_create_website_uri */
  {__pyx_k_critical, sizeof(__pyx_k_critical), 0, 1, 1}, /* PyObject cname: __pyx_n_u_critical */
  {__pyx_k_d, sizeof(__pyx_k_d), 0, 1, 1}, /* PyObject cname: __pyx_n_u_d */
  {__pyx_k_data, sizeof(__pyx_k_data), 0, 1, 1}, /* PyObject cname: __pyx_n_u_data */
  {__pyx_k_date_to_milliseconds, sizeof(__pyx_k_date_to_milliseconds), 0, 1, 1}, /* PyObject cname: __pyx_n_u_date_to_milliseconds */
  {__pyx_k_datetime, sizeof(__pyx_k_datetime), 0, 1, 1}, /* PyObject cname: __pyx_n_u_datetime */
  {__pyx_k_debug, sizeof(__pyx_k_debug), 0, 1, 1}, /* PyObject cname: __pyx_n_u_debug */
  {__pyx_k_delete, sizeof(__pyx_k_delete), 0, 1, 1}, /* PyObject cname: __pyx_n_u_delete */
  {__pyx_k_delete_2, sizeof(__pyx_k_delete_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_delete_2 */
  {__pyx_k_depth, sizeof(__pyx_k_depth), 0, 1, 1}, /* PyObject cname: __pyx_n_u_depth */
  {__pyx_k_dev, sizeof(__pyx_k_dev), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_dev */
  {__pyx_k_dict, sizeof(__pyx_k_dict), 0, 1, 1}, /* PyObject cname: __pyx_n_u_dict */
  {__pyx_k_disable, sizeof(__pyx_k_disable), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_disable */
  {__pyx_k_disableFastWithdrawSwitch, sizeof(__pyx_k_disableFastWithdrawSwitch), 0, 1, 1}, /* PyObject cname: __pyx_n_u_disableFastWithdrawSwitch */
  {__pyx_k_disable_colorama, sizeof(__pyx_k_disable_colorama), 0, 1, 1}, /* PyObject cname: __pyx_n_u_disable_colorama */
  {__pyx_k_disable_fast_withdraw_switch, sizeof(__pyx_k_disable_fast_withdraw_switch), 0, 1, 1}, /* PyObject cname: __pyx_n_u_disable_fast_withdraw_switch */
  {__pyx_k_doc, sizeof(__pyx_k_doc), 0, 1, 1}, /* PyObject cname: __pyx_n_u_doc */
  {__pyx_k_enable, sizeof(__pyx_k_enable), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_enable */
  {__pyx_k_enableFastWithdrawSwitch, sizeof(__pyx_k_enableFastWithdrawSwitch), 0, 1, 1}, /* PyObject cname: __pyx_n_u_enableFastWithdrawSwitch */
  {__pyx_k_enable_fast_withdraw_switch, sizeof(__pyx_k_enable_fast_withdraw_switch), 0, 1, 1}, /* PyObject cname: __pyx_n_u_enable_fast_withdraw_switch */
  {__pyx_k_enable_subaccount_futures, sizeof(__pyx_k_enable_subaccount_futures), 0, 1, 1}, /* PyObject cname: __pyx_n_u_enable_subaccount_futures */
  {__pyx_k_enable_subaccount_margin, sizeof(__pyx_k_enable_subaccount_margin), 0, 1, 1}, /* PyObject cname: __pyx_n_u_enable_subaccount_margin */
  {__pyx_k_encode, sizeof(__pyx_k_encode), 0, 1, 1}, /* PyObject cname: __pyx_n_u_encode */
  {__pyx_k_endTime, sizeof(__pyx_k_endTime), 0, 1, 1}, /* PyObject cname: __pyx_n_u_endTime */
  {__pyx_k_end_str, sizeof(__pyx_k_end_str), 0, 1, 1}, /* PyObject cname: __pyx_n_u_end_str */
  {__pyx_k_end_ts, sizeof(__pyx_k_end_ts), 0, 1, 1}, /* PyObject cname: __pyx_n_u_end_ts */
  {__pyx_k_enter, sizeof(__pyx_k_enter), 0, 1, 1}, /* PyObject cname: __pyx_n_u_enter */
  {__pyx_k_entry, sizeof(__pyx_k_entry), 0, 1, 1}, /* PyObject cname: __pyx_n_u_entry */
  {__pyx_k_enumerate, sizeof(__pyx_k_enumerate), 0, 1, 1}, /* PyObject cname: __pyx_n_u_enumerate */
  {__pyx_k_error_msg, sizeof(__pyx_k_error_msg), 0, 1, 1}, /* PyObject cname: __pyx_n_u_error_msg */
  {__pyx_k_error_traceback, sizeof(__pyx_k_error_traceback), 0, 1, 1}, /* PyObject cname: __pyx_n_u_error_traceback */
  {__pyx_k_exc_type, sizeof(__pyx_k_exc_type), 0, 1, 1}, /* PyObject cname: __pyx_n_u_exc_type */
  {__pyx_k_exc_value, sizeof(__pyx_k_exc_value), 0, 1, 1}, /* PyObject cname: __pyx_n_u_exc_value */
  {__pyx_k_exceptions, sizeof(__pyx_k_exceptions), 0, 1, 1}, /* PyObject cname: __pyx_n_u_exceptions */
  {__pyx_k_exchange, sizeof(__pyx_k_exchange), 0, 1, 1}, /* PyObject cname: __pyx_n_u_exchange */
  {__pyx_k_exchangeInfo, sizeof(__pyx_k_exchangeInfo), 0, 1, 1}, /* PyObject cname: __pyx_n_u_exchangeInfo */
  {__pyx_k_exchange_2, sizeof(__pyx_k_exchange_2), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_exchange_2 */
  {__pyx_k_exchange_api_v1_public_asset_ser, sizeof(__pyx_k_exchange_api_v1_public_asset_ser), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_exchange_api_v1_public_asset_ser */
  {__pyx_k_exit, sizeof(__pyx_k_exit), 0, 1, 1}, /* PyObject cname: __pyx_n_u_exit */
  {__pyx_k_f, sizeof(__pyx_k_f), 0, 1, 1}, /* PyObject cname: __pyx_n_u_f */
  {__pyx_k_first_valid_ts, sizeof(__pyx_k_first_valid_ts), 0, 1, 1}, /* PyObject cname: __pyx_n_u_first_valid_ts */
  {__pyx_k_for_exchange, sizeof(__pyx_k_for_exchange), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_for_exchange */
  {__pyx_k_force_params, sizeof(__pyx_k_force_params), 0, 1, 1}, /* PyObject cname: __pyx_n_u_force_params */
  {__pyx_k_format, sizeof(__pyx_k_format), 0, 1, 1}, /* PyObject cname: __pyx_n_u_format */
  {__pyx_k_fromId, sizeof(__pyx_k_fromId), 0, 1, 1}, /* PyObject cname: __pyx_n_u_fromId */
  {__pyx_k_func, sizeof(__pyx_k_func), 0, 1, 1}, /* PyObject cname: __pyx_n_u_func */
  {__pyx_k_fundingRate, sizeof(__pyx_k_fundingRate), 0, 1, 1}, /* PyObject cname: __pyx_n_u_fundingRate */
  {__pyx_k_futures_account, sizeof(__pyx_k_futures_account), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_account */
  {__pyx_k_futures_account_balance, sizeof(__pyx_k_futures_account_balance), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_account_balance */
  {__pyx_k_futures_account_trades, sizeof(__pyx_k_futures_account_trades), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_account_trades */
  {__pyx_k_futures_account_transfer, sizeof(__pyx_k_futures_account_transfer), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_account_transfer */
  {__pyx_k_futures_aggregate_trades, sizeof(__pyx_k_futures_aggregate_trades), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_aggregate_trades */
  {__pyx_k_futures_auto_cancel_all_open_ord, sizeof(__pyx_k_futures_auto_cancel_all_open_ord), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_auto_cancel_all_open_ord */
  {__pyx_k_futures_cancel_all_open_orders, sizeof(__pyx_k_futures_cancel_all_open_orders), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_cancel_all_open_orders */
  {__pyx_k_futures_cancel_order, sizeof(__pyx_k_futures_cancel_order), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_cancel_order */
  {__pyx_k_futures_cancel_orders, sizeof(__pyx_k_futures_cancel_orders), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_cancel_orders */
  {__pyx_k_futures_change_leverage, sizeof(__pyx_k_futures_change_leverage), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_change_leverage */
  {__pyx_k_futures_change_margin_type, sizeof(__pyx_k_futures_change_margin_type), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_change_margin_type */
  {__pyx_k_futures_change_position_margin, sizeof(__pyx_k_futures_change_position_margin), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_change_position_margin */
  {__pyx_k_futures_change_position_mode, sizeof(__pyx_k_futures_change_position_mode), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_change_position_mode */
  {__pyx_k_futures_coin_account, sizeof(__pyx_k_futures_coin_account), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_coin_account */
  {__pyx_k_futures_coin_account_balance, sizeof(__pyx_k_futures_coin_account_balance), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_coin_account_balance */
  {__pyx_k_futures_coin_account_trades, sizeof(__pyx_k_futures_coin_account_trades), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_coin_account_trades */
  {__pyx_k_futures_coin_aggregate_trades, sizeof(__pyx_k_futures_coin_aggregate_trades), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_coin_aggregate_trades */
  {__pyx_k_futures_coin_cancel_all_open_ord, sizeof(__pyx_k_futures_coin_cancel_all_open_ord), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_coin_cancel_all_open_ord */
  {__pyx_k_futures_coin_cancel_order, sizeof(__pyx_k_futures_coin_cancel_order), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_coin_cancel_order */
  {__pyx_k_futures_coin_cancel_orders, sizeof(__pyx_k_futures_coin_cancel_orders), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_coin_cancel_orders */
  {__pyx_k_futures_coin_change_leverage, sizeof(__pyx_k_futures_coin_change_leverage), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_coin_change_leverage */
  {__pyx_k_futures_coin_change_margin_type, sizeof(__pyx_k_futures_coin_change_margin_type), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_coin_change_margin_type */
  {__pyx_k_futures_coin_change_position_mar, sizeof(__pyx_k_futures_coin_change_position_mar), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_coin_change_position_mar */
  {__pyx_k_futures_coin_change_position_mod, sizeof(__pyx_k_futures_coin_change_position_mod), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_coin_change_position_mod */
  {__pyx_k_futures_coin_continous_klines, sizeof(__pyx_k_futures_coin_continous_klines), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_coin_continous_klines */
  {__pyx_k_futures_coin_create_order, sizeof(__pyx_k_futures_coin_create_order), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_coin_create_order */
  {__pyx_k_futures_coin_exchange_info, sizeof(__pyx_k_futures_coin_exchange_info), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_coin_exchange_info */
  {__pyx_k_futures_coin_funding_rate, sizeof(__pyx_k_futures_coin_funding_rate), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_coin_funding_rate */
  {__pyx_k_futures_coin_get_all_orders, sizeof(__pyx_k_futures_coin_get_all_orders), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_coin_get_all_orders */
  {__pyx_k_futures_coin_get_open_orders, sizeof(__pyx_k_futures_coin_get_open_orders), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_coin_get_open_orders */
  {__pyx_k_futures_coin_get_order, sizeof(__pyx_k_futures_coin_get_order), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_coin_get_order */
  {__pyx_k_futures_coin_get_position_mode, sizeof(__pyx_k_futures_coin_get_position_mode), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_coin_get_position_mode */
  {__pyx_k_futures_coin_historical_trades, sizeof(__pyx_k_futures_coin_historical_trades), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_coin_historical_trades */
  {__pyx_k_futures_coin_income_history, sizeof(__pyx_k_futures_coin_income_history), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_coin_income_history */
  {__pyx_k_futures_coin_index_price_klines, sizeof(__pyx_k_futures_coin_index_price_klines), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_coin_index_price_klines */
  {__pyx_k_futures_coin_klines, sizeof(__pyx_k_futures_coin_klines), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_coin_klines */
  {__pyx_k_futures_coin_leverage_bracket, sizeof(__pyx_k_futures_coin_leverage_bracket), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_coin_leverage_bracket */
  {__pyx_k_futures_coin_liquidation_orders, sizeof(__pyx_k_futures_coin_liquidation_orders), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_coin_liquidation_orders */
  {__pyx_k_futures_coin_mark_price, sizeof(__pyx_k_futures_coin_mark_price), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_coin_mark_price */
  {__pyx_k_futures_coin_mark_price_klines, sizeof(__pyx_k_futures_coin_mark_price_klines), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_coin_mark_price_klines */
  {__pyx_k_futures_coin_open_interest, sizeof(__pyx_k_futures_coin_open_interest), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_coin_open_interest */
  {__pyx_k_futures_coin_open_interest_hist, sizeof(__pyx_k_futures_coin_open_interest_hist), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_coin_open_interest_hist */
  {__pyx_k_futures_coin_order_book, sizeof(__pyx_k_futures_coin_order_book), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_coin_order_book */
  {__pyx_k_futures_coin_orderbook_ticker, sizeof(__pyx_k_futures_coin_orderbook_ticker), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_coin_orderbook_ticker */
  {__pyx_k_futures_coin_ping, sizeof(__pyx_k_futures_coin_ping), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_coin_ping */
  {__pyx_k_futures_coin_place_batch_order, sizeof(__pyx_k_futures_coin_place_batch_order), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_coin_place_batch_order */
  {__pyx_k_futures_coin_position_informatio, sizeof(__pyx_k_futures_coin_position_informatio), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_coin_position_informatio */
  {__pyx_k_futures_coin_position_margin_his, sizeof(__pyx_k_futures_coin_position_margin_his), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_coin_position_margin_his */
  {__pyx_k_futures_coin_recent_trades, sizeof(__pyx_k_futures_coin_recent_trades), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_coin_recent_trades */
  {__pyx_k_futures_coin_stream_close, sizeof(__pyx_k_futures_coin_stream_close), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_coin_stream_close */
  {__pyx_k_futures_coin_stream_get_listen_k, sizeof(__pyx_k_futures_coin_stream_get_listen_k), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_coin_stream_get_listen_k */
  {__pyx_k_futures_coin_stream_keepalive, sizeof(__pyx_k_futures_coin_stream_keepalive), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_coin_stream_keepalive */
  {__pyx_k_futures_coin_symbol_ticker, sizeof(__pyx_k_futures_coin_symbol_ticker), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_coin_symbol_ticker */
  {__pyx_k_futures_coin_ticker, sizeof(__pyx_k_futures_coin_ticker), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_coin_ticker */
  {__pyx_k_futures_coin_time, sizeof(__pyx_k_futures_coin_time), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_coin_time */
  {__pyx_k_futures_commission_rate, sizeof(__pyx_k_futures_commission_rate), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_commission_rate */
  {__pyx_k_futures_create_order, sizeof(__pyx_k_futures_create_order), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_create_order */
  {__pyx_k_futures_exchange_info, sizeof(__pyx_k_futures_exchange_info), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_exchange_info */
  {__pyx_k_futures_funding_rate, sizeof(__pyx_k_futures_funding_rate), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_funding_rate */
  {__pyx_k_futures_get_all_orders, sizeof(__pyx_k_futures_get_all_orders), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_get_all_orders */
  {__pyx_k_futures_get_open_orders, sizeof(__pyx_k_futures_get_open_orders), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_get_open_orders */
  {__pyx_k_futures_get_order, sizeof(__pyx_k_futures_get_order), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_get_order */
  {__pyx_k_futures_get_position_mode, sizeof(__pyx_k_futures_get_position_mode), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_get_position_mode */
  {__pyx_k_futures_historical_trades, sizeof(__pyx_k_futures_historical_trades), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_historical_trades */
  {__pyx_k_futures_income_history, sizeof(__pyx_k_futures_income_history), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_income_history */
  {__pyx_k_futures_klines, sizeof(__pyx_k_futures_klines), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_klines */
  {__pyx_k_futures_leverage_bracket, sizeof(__pyx_k_futures_leverage_bracket), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_leverage_bracket */
  {__pyx_k_futures_liquidation_orders, sizeof(__pyx_k_futures_liquidation_orders), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_liquidation_orders */
  {__pyx_k_futures_mark_price, sizeof(__pyx_k_futures_mark_price), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_mark_price */
  {__pyx_k_futures_open_interest, sizeof(__pyx_k_futures_open_interest), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_open_interest */
  {__pyx_k_futures_open_interest_hist, sizeof(__pyx_k_futures_open_interest_hist), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_open_interest_hist */
  {__pyx_k_futures_order_book, sizeof(__pyx_k_futures_order_book), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_order_book */
  {__pyx_k_futures_orderbook_ticker, sizeof(__pyx_k_futures_orderbook_ticker), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_orderbook_ticker */
  {__pyx_k_futures_ping, sizeof(__pyx_k_futures_ping), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_ping */
  {__pyx_k_futures_place_batch_order, sizeof(__pyx_k_futures_place_batch_order), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_place_batch_order */
  {__pyx_k_futures_position_information, sizeof(__pyx_k_futures_position_information), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_position_information */
  {__pyx_k_futures_position_margin_history, sizeof(__pyx_k_futures_position_margin_history), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_position_margin_history */
  {__pyx_k_futures_recent_trades, sizeof(__pyx_k_futures_recent_trades), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_recent_trades */
  {__pyx_k_futures_stream_close, sizeof(__pyx_k_futures_stream_close), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_stream_close */
  {__pyx_k_futures_stream_get_listen_key, sizeof(__pyx_k_futures_stream_get_listen_key), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_stream_get_listen_key */
  {__pyx_k_futures_stream_keepalive, sizeof(__pyx_k_futures_stream_keepalive), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_stream_keepalive */
  {__pyx_k_futures_symbol_ticker, sizeof(__pyx_k_futures_symbol_ticker), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_symbol_ticker */
  {__pyx_k_futures_ticker, sizeof(__pyx_k_futures_ticker), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_ticker */
  {__pyx_k_futures_time, sizeof(__pyx_k_futures_time), 0, 1, 1}, /* PyObject cname: __pyx_n_u_futures_time */
  {__pyx_k_futures_transfer, sizeof(__pyx_k_futures_transfer), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_futures_transfer */
  {__pyx_k_gc, sizeof(__pyx_k_gc), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_gc */
  {__pyx_k_generate_signature, sizeof(__pyx_k_generate_signature), 0, 1, 1}, /* PyObject cname: __pyx_n_u_generate_signature */
  {__pyx_k_genexpr, sizeof(__pyx_k_genexpr), 0, 1, 1}, /* PyObject cname: __pyx_n_u_genexpr */
  {__pyx_k_get, sizeof(__pyx_k_get), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get */
  {__pyx_k_getLogger, sizeof(__pyx_k_getLogger), 0, 1, 1}, /* PyObject cname: __pyx_n_u_getLogger */
  {__pyx_k_get_2, sizeof(__pyx_k_get_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_2 */
  {__pyx_k_get_account, sizeof(__pyx_k_get_account), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_account */
  {__pyx_k_get_account_api_trading_status, sizeof(__pyx_k_get_account_api_trading_status), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_account_api_trading_status */
  {__pyx_k_get_account_snapshot, sizeof(__pyx_k_get_account_snapshot), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_account_snapshot */
  {__pyx_k_get_account_status, sizeof(__pyx_k_get_account_status), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_account_status */
  {__pyx_k_get_aggregate_trades, sizeof(__pyx_k_get_aggregate_trades), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_aggregate_trades */
  {__pyx_k_get_all_coins_info, sizeof(__pyx_k_get_all_coins_info), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_all_coins_info */
  {__pyx_k_get_all_isolated_margin_symbols, sizeof(__pyx_k_get_all_isolated_margin_symbols), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_all_isolated_margin_symbols */
  {__pyx_k_get_all_margin_orders, sizeof(__pyx_k_get_all_margin_orders), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_all_margin_orders */
  {__pyx_k_get_all_orders, sizeof(__pyx_k_get_all_orders), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_all_orders */
  {__pyx_k_get_all_tickers, sizeof(__pyx_k_get_all_tickers), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_all_tickers */
  {__pyx_k_get_asset_balance, sizeof(__pyx_k_get_asset_balance), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_asset_balance */
  {__pyx_k_get_asset_details, sizeof(__pyx_k_get_asset_details), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_asset_details */
  {__pyx_k_get_asset_dividend_history, sizeof(__pyx_k_get_asset_dividend_history), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_asset_dividend_history */
  {__pyx_k_get_avg_price, sizeof(__pyx_k_get_avg_price), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_avg_price */
  {__pyx_k_get_bnb_burn_spot_margin, sizeof(__pyx_k_get_bnb_burn_spot_margin), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_bnb_burn_spot_margin */
  {__pyx_k_get_deposit_address, sizeof(__pyx_k_get_deposit_address), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_deposit_address */
  {__pyx_k_get_deposit_history, sizeof(__pyx_k_get_deposit_history), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_deposit_history */
  {__pyx_k_get_dust_log, sizeof(__pyx_k_get_dust_log), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_dust_log */
  {__pyx_k_get_earliest_valid_timestamp, sizeof(__pyx_k_get_earliest_valid_timestamp), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_earliest_valid_timestamp */
  {__pyx_k_get_exchange_info, sizeof(__pyx_k_get_exchange_info), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_exchange_info */
  {__pyx_k_get_fixed_activity_project_list, sizeof(__pyx_k_get_fixed_activity_project_list), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_fixed_activity_project_list */
  {__pyx_k_get_historical_klines, sizeof(__pyx_k_get_historical_klines), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_historical_klines */
  {__pyx_k_get_historical_klines_generator, sizeof(__pyx_k_get_historical_klines_generator), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_historical_klines_generator */
  {__pyx_k_get_historical_trades, sizeof(__pyx_k_get_historical_trades), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_historical_trades */
  {__pyx_k_get_isolated_margin_account, sizeof(__pyx_k_get_isolated_margin_account), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_isolated_margin_account */
  {__pyx_k_get_isolated_margin_symbol, sizeof(__pyx_k_get_isolated_margin_symbol), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_isolated_margin_symbol */
  {__pyx_k_get_klines, sizeof(__pyx_k_get_klines), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_klines */
  {__pyx_k_get_latest_release_info, sizeof(__pyx_k_get_latest_release_info), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_latest_release_info */
  {__pyx_k_get_latest_version, sizeof(__pyx_k_get_latest_version), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_latest_version */
  {__pyx_k_get_lending_account, sizeof(__pyx_k_get_lending_account), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_lending_account */
  {__pyx_k_get_lending_daily_quota_left, sizeof(__pyx_k_get_lending_daily_quota_left), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_lending_daily_quota_left */
  {__pyx_k_get_lending_daily_redemption_quo, sizeof(__pyx_k_get_lending_daily_redemption_quo), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_lending_daily_redemption_quo */
  {__pyx_k_get_lending_interest_history, sizeof(__pyx_k_get_lending_interest_history), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_lending_interest_history */
  {__pyx_k_get_lending_position, sizeof(__pyx_k_get_lending_position), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_lending_position */
  {__pyx_k_get_lending_product_list, sizeof(__pyx_k_get_lending_product_list), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_lending_product_list */
  {__pyx_k_get_lending_purchase_history, sizeof(__pyx_k_get_lending_purchase_history), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_lending_purchase_history */
  {__pyx_k_get_lending_redemption_history, sizeof(__pyx_k_get_lending_redemption_history), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_lending_redemption_history */
  {__pyx_k_get_margin_account, sizeof(__pyx_k_get_margin_account), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_margin_account */
  {__pyx_k_get_margin_asset, sizeof(__pyx_k_get_margin_asset), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_margin_asset */
  {__pyx_k_get_margin_loan_details, sizeof(__pyx_k_get_margin_loan_details), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_margin_loan_details */
  {__pyx_k_get_margin_oco_order, sizeof(__pyx_k_get_margin_oco_order), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_margin_oco_order */
  {__pyx_k_get_margin_order, sizeof(__pyx_k_get_margin_order), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_margin_order */
  {__pyx_k_get_margin_price_index, sizeof(__pyx_k_get_margin_price_index), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_margin_price_index */
  {__pyx_k_get_margin_repay_details, sizeof(__pyx_k_get_margin_repay_details), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_margin_repay_details */
  {__pyx_k_get_margin_symbol, sizeof(__pyx_k_get_margin_symbol), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_margin_symbol */
  {__pyx_k_get_margin_trades, sizeof(__pyx_k_get_margin_trades), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_margin_trades */
  {__pyx_k_get_max_margin_loan, sizeof(__pyx_k_get_max_margin_loan), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_max_margin_loan */
  {__pyx_k_get_max_margin_transfer, sizeof(__pyx_k_get_max_margin_transfer), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_max_margin_transfer */
  {__pyx_k_get_my_trades, sizeof(__pyx_k_get_my_trades), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_my_trades */
  {__pyx_k_get_open_isolated_margin_orders, sizeof(__pyx_k_get_open_isolated_margin_orders), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_open_isolated_margin_orders */
  {__pyx_k_get_open_margin_oco_orders, sizeof(__pyx_k_get_open_margin_oco_orders), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_open_margin_oco_orders */
  {__pyx_k_get_open_margin_orders, sizeof(__pyx_k_get_open_margin_orders), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_open_margin_orders */
  {__pyx_k_get_open_orders, sizeof(__pyx_k_get_open_orders), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_open_orders */
  {__pyx_k_get_order, sizeof(__pyx_k_get_order), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_order */
  {__pyx_k_get_order_book, sizeof(__pyx_k_get_order_book), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_order_book */
  {__pyx_k_get_orderbook_ticker, sizeof(__pyx_k_get_orderbook_ticker), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_orderbook_ticker */
  {__pyx_k_get_orderbook_tickers, sizeof(__pyx_k_get_orderbook_tickers), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_orderbook_tickers */
  {__pyx_k_get_products, sizeof(__pyx_k_get_products), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_products */
  {__pyx_k_get_recent_trades, sizeof(__pyx_k_get_recent_trades), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_recent_trades */
  {__pyx_k_get_server_time, sizeof(__pyx_k_get_server_time), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_server_time */
  {__pyx_k_get_sub_account_assets, sizeof(__pyx_k_get_sub_account_assets), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_sub_account_assets */
  {__pyx_k_get_sub_account_futures_transfer, sizeof(__pyx_k_get_sub_account_futures_transfer), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_sub_account_futures_transfer */
  {__pyx_k_get_sub_account_list, sizeof(__pyx_k_get_sub_account_list), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_sub_account_list */
  {__pyx_k_get_sub_account_transfer_history, sizeof(__pyx_k_get_sub_account_transfer_history), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_sub_account_transfer_history */
  {__pyx_k_get_subaccount_deposit_address, sizeof(__pyx_k_get_subaccount_deposit_address), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_subaccount_deposit_address */
  {__pyx_k_get_subaccount_deposit_history, sizeof(__pyx_k_get_subaccount_deposit_history), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_subaccount_deposit_history */
  {__pyx_k_get_subaccount_futures_details, sizeof(__pyx_k_get_subaccount_futures_details), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_subaccount_futures_details */
  {__pyx_k_get_subaccount_futures_margin_st, sizeof(__pyx_k_get_subaccount_futures_margin_st), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_subaccount_futures_margin_st */
  {__pyx_k_get_subaccount_futures_positionr, sizeof(__pyx_k_get_subaccount_futures_positionr), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_subaccount_futures_positionr */
  {__pyx_k_get_subaccount_futures_summary, sizeof(__pyx_k_get_subaccount_futures_summary), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_subaccount_futures_summary */
  {__pyx_k_get_subaccount_margin_details, sizeof(__pyx_k_get_subaccount_margin_details), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_subaccount_margin_details */
  {__pyx_k_get_subaccount_margin_summary, sizeof(__pyx_k_get_subaccount_margin_summary), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_subaccount_margin_summary */
  {__pyx_k_get_subaccount_transfer_history, sizeof(__pyx_k_get_subaccount_transfer_history), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_subaccount_transfer_history */
  {__pyx_k_get_symbol_info, sizeof(__pyx_k_get_symbol_info), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_symbol_info */
  {__pyx_k_get_symbol_ticker, sizeof(__pyx_k_get_symbol_ticker), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_symbol_ticker */
  {__pyx_k_get_system_status, sizeof(__pyx_k_get_system_status), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_system_status */
  {__pyx_k_get_ticker, sizeof(__pyx_k_get_ticker), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_ticker */
  {__pyx_k_get_trade_fee, sizeof(__pyx_k_get_trade_fee), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_trade_fee */
  {__pyx_k_get_universal_transfer_history, sizeof(__pyx_k_get_universal_transfer_history), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_universal_transfer_history */
  {__pyx_k_get_used_weight, sizeof(__pyx_k_get_used_weight), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_used_weight */
  {__pyx_k_get_user_agent, sizeof(__pyx_k_get_user_agent), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_user_agent */
  {__pyx_k_get_version, sizeof(__pyx_k_get_version), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_version */
  {__pyx_k_get_withdraw_history, sizeof(__pyx_k_get_withdraw_history), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_withdraw_history */
  {__pyx_k_get_withdraw_history_id, sizeof(__pyx_k_get_withdraw_history_id), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_withdraw_history_id */
  {__pyx_k_handle_response, sizeof(__pyx_k_handle_response), 0, 1, 1}, /* PyObject cname: __pyx_n_u_handle_response */
  {__pyx_k_has_signature, sizeof(__pyx_k_has_signature), 0, 1, 1}, /* PyObject cname: __pyx_n_u_has_signature */
  {__pyx_k_hashlib, sizeof(__pyx_k_hashlib), 0, 1, 1}, /* PyObject cname: __pyx_n_u_hashlib */
  {__pyx_k_headers, sizeof(__pyx_k_headers), 0, 1, 1}, /* PyObject cname: __pyx_n_u_headers */
  {__pyx_k_helpers, sizeof(__pyx_k_helpers), 0, 1, 1}, /* PyObject cname: __pyx_n_u_helpers */
  {__pyx_k_hexdigest, sizeof(__pyx_k_hexdigest), 0, 1, 1}, /* PyObject cname: __pyx_n_u_hexdigest */
  {__pyx_k_historicalTrades, sizeof(__pyx_k_historicalTrades), 0, 1, 1}, /* PyObject cname: __pyx_n_u_historicalTrades */
  {__pyx_k_hmac, sizeof(__pyx_k_hmac), 0, 1, 1}, /* PyObject cname: __pyx_n_u_hmac */
  {__pyx_k_http, sizeof(__pyx_k_http), 0, 1, 1}, /* PyObject cname: __pyx_n_u_http */
  {__pyx_k_https, sizeof(__pyx_k_https), 0, 1, 1}, /* PyObject cname: __pyx_n_u_https */
  {__pyx_k_https_api_binance_api, sizeof(__pyx_k_https_api_binance_api), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_https_api_binance_api */
  {__pyx_k_https_api_binance_com_api, sizeof(__pyx_k_https_api_binance_com_api), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_https_api_binance_com_api */
  {__pyx_k_https_api_binance_com_sapi, sizeof(__pyx_k_https_api_binance_com_sapi), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_https_api_binance_com_sapi */
  {__pyx_k_https_api_binance_sapi, sizeof(__pyx_k_https_api_binance_sapi), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_https_api_binance_sapi */
  {__pyx_k_https_api_binance_us_api, sizeof(__pyx_k_https_api_binance_us_api), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_https_api_binance_us_api */
  {__pyx_k_https_api_binance_us_sapi, sizeof(__pyx_k_https_api_binance_us_sapi), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_https_api_binance_us_sapi */
  {__pyx_k_https_api_github_com_repos_LUCIT, sizeof(__pyx_k_https_api_github_com_repos_LUCIT), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_https_api_github_com_repos_LUCIT */
  {__pyx_k_https_api_trbinance_com_sapi, sizeof(__pyx_k_https_api_trbinance_com_sapi), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_https_api_trbinance_com_sapi */
  {__pyx_k_https_dapi_binance_com_futures_d, sizeof(__pyx_k_https_dapi_binance_com_futures_d), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_https_dapi_binance_com_futures_d */
  {__pyx_k_https_dapi_binance_futures_data, sizeof(__pyx_k_https_dapi_binance_futures_data), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_https_dapi_binance_futures_data */
  {__pyx_k_https_dapi_binance_us_futures_da, sizeof(__pyx_k_https_dapi_binance_us_futures_da), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_https_dapi_binance_us_futures_da */
  {__pyx_k_https_dapi_trbinance_com_futures, sizeof(__pyx_k_https_dapi_trbinance_com_futures), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_https_dapi_trbinance_com_futures */
  {__pyx_k_https_fapi_binance_com_fapi, sizeof(__pyx_k_https_fapi_binance_com_fapi), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_https_fapi_binance_com_fapi */
  {__pyx_k_https_fapi_binance_com_futures_d, sizeof(__pyx_k_https_fapi_binance_com_futures_d), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_https_fapi_binance_com_futures_d */
  {__pyx_k_https_fapi_binance_fapi, sizeof(__pyx_k_https_fapi_binance_fapi), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_https_fapi_binance_fapi */
  {__pyx_k_https_fapi_binance_futures_data, sizeof(__pyx_k_https_fapi_binance_futures_data), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_https_fapi_binance_futures_data */
  {__pyx_k_https_fapi_binance_us_fapi, sizeof(__pyx_k_https_fapi_binance_us_fapi), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_https_fapi_binance_us_fapi */
  {__pyx_k_https_fapi_binance_us_futures_da, sizeof(__pyx_k_https_fapi_binance_us_futures_da), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_https_fapi_binance_us_futures_da */
  {__pyx_k_https_fapi_trbinance_com_fapi, sizeof(__pyx_k_https_fapi_trbinance_com_fapi), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_https_fapi_trbinance_com_fapi */
  {__pyx_k_https_fapi_trbinance_com_futures, sizeof(__pyx_k_https_fapi_trbinance_com_futures), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_https_fapi_trbinance_com_futures */
  {__pyx_k_https_testnet_binance_vision, sizeof(__pyx_k_https_testnet_binance_vision), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_https_testnet_binance_vision */
  {__pyx_k_https_testnet_binance_vision_api, sizeof(__pyx_k_https_testnet_binance_vision_api), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_https_testnet_binance_vision_api */
  {__pyx_k_https_testnet_binancefuture_com, sizeof(__pyx_k_https_testnet_binancefuture_com), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_https_testnet_binancefuture_com */
  {__pyx_k_https_testnet_binancefuture_com_2, sizeof(__pyx_k_https_testnet_binancefuture_com_2), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_https_testnet_binancefuture_com_2 */
  {__pyx_k_https_testnet_binancefuture_com_3, sizeof(__pyx_k_https_testnet_binancefuture_com_3), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_https_testnet_binancefuture_com_3 */
  {__pyx_k_https_www_binance, sizeof(__pyx_k_https_www_binance), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_https_www_binance */
  {__pyx_k_https_www_binance_com, sizeof(__pyx_k_https_www_binance_com), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_https_www_binance_com */
  {__pyx_k_https_www_binance_us, sizeof(__pyx_k_https_www_binance_us), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_https_www_binance_us */
  {__pyx_k_https_www_trbinance_com, sizeof(__pyx_k_https_www_trbinance_com), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_https_www_trbinance_com */
  {__pyx_k_https_www_trbinance_com_api, sizeof(__pyx_k_https_www_trbinance_com_api), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_https_www_trbinance_com_api */
  {__pyx_k_i, sizeof(__pyx_k_i), 0, 1, 1}, /* PyObject cname: __pyx_n_u_i */
  {__pyx_k_id, sizeof(__pyx_k_id), 0, 1, 1}, /* PyObject cname: __pyx_n_u_id */
  {__pyx_k_idx, sizeof(__pyx_k_idx), 0, 1, 1}, /* PyObject cname: __pyx_n_u_idx */
  {__pyx_k_income, sizeof(__pyx_k_income), 0, 1, 1}, /* PyObject cname: __pyx_n_u_income */
  {__pyx_k_indexPriceKlines, sizeof(__pyx_k_indexPriceKlines), 0, 1, 1}, /* PyObject cname: __pyx_n_u_indexPriceKlines */
  {__pyx_k_info, sizeof(__pyx_k_info), 0, 1, 1}, /* PyObject cname: __pyx_n_u_info */
  {__pyx_k_init, sizeof(__pyx_k_init), 0, 1, 1}, /* PyObject cname: __pyx_n_u_init */
  {__pyx_k_init_2, sizeof(__pyx_k_init_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_init_2 */
  {__pyx_k_init_session, sizeof(__pyx_k_init_session), 0, 1, 1}, /* PyObject cname: __pyx_n_u_init_session */
  {__pyx_k_initializing, sizeof(__pyx_k_initializing), 0, 1, 1}, /* PyObject cname: __pyx_n_u_initializing */
  {__pyx_k_installed_version, sizeof(__pyx_k_installed_version), 0, 1, 1}, /* PyObject cname: __pyx_n_u_installed_version */
  {__pyx_k_int, sizeof(__pyx_k_int), 0, 1, 1}, /* PyObject cname: __pyx_n_u_int */
  {__pyx_k_interval, sizeof(__pyx_k_interval), 0, 1, 1}, /* PyObject cname: __pyx_n_u_interval */
  {__pyx_k_interval_to_milliseconds, sizeof(__pyx_k_interval_to_milliseconds), 0, 1, 1}, /* PyObject cname: __pyx_n_u_interval_to_milliseconds */
  {__pyx_k_is_available_please_consider_up, sizeof(__pyx_k_is_available_please_consider_up), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_is_available_please_consider_up */
  {__pyx_k_is_coroutine, sizeof(__pyx_k_is_coroutine), 0, 1, 1}, /* PyObject cname: __pyx_n_u_is_coroutine */
  {__pyx_k_is_update_availabe, sizeof(__pyx_k_is_update_availabe), 0, 1, 1}, /* PyObject cname: __pyx_n_u_is_update_availabe */
  {__pyx_k_isenabled, sizeof(__pyx_k_isenabled), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_isenabled */
  {__pyx_k_isolated_margin_stream_close, sizeof(__pyx_k_isolated_margin_stream_close), 0, 1, 1}, /* PyObject cname: __pyx_n_u_isolated_margin_stream_close */
  {__pyx_k_isolated_margin_stream_get_liste, sizeof(__pyx_k_isolated_margin_stream_get_liste), 0, 1, 1}, /* PyObject cname: __pyx_n_u_isolated_margin_stream_get_liste */
  {__pyx_k_isolated_margin_stream_keepalive, sizeof(__pyx_k_isolated_margin_stream_keepalive), 0, 1, 1}, /* PyObject cname: __pyx_n_u_isolated_margin_stream_keepalive */
  {__pyx_k_item, sizeof(__pyx_k_item), 0, 1, 1}, /* PyObject cname: __pyx_n_u_item */
  {__pyx_k_itemgetter, sizeof(__pyx_k_itemgetter), 0, 1, 1}, /* PyObject cname: __pyx_n_u_itemgetter */
  {__pyx_k_items, sizeof(__pyx_k_items), 0, 1, 1}, /* PyObject cname: __pyx_n_u_items */
  {__pyx_k_json, sizeof(__pyx_k_json), 0, 1, 1}, /* PyObject cname: __pyx_n_u_json */
  {__pyx_k_key, sizeof(__pyx_k_key), 0, 1, 1}, /* PyObject cname: __pyx_n_u_key */
  {__pyx_k_kline, sizeof(__pyx_k_kline), 0, 1, 1}, /* PyObject cname: __pyx_n_u_kline */
  {__pyx_k_klines, sizeof(__pyx_k_klines), 0, 1, 1}, /* PyObject cname: __pyx_n_u_klines */
  {__pyx_k_kwargs, sizeof(__pyx_k_kwargs), 0, 1, 1}, /* PyObject cname: __pyx_n_u_kwargs */
  {__pyx_k_l, sizeof(__pyx_k_l), 0, 1, 1}, /* PyObject cname: __pyx_n_u_l */
  {__pyx_k_last_id, sizeof(__pyx_k_last_id), 0, 1, 1}, /* PyObject cname: __pyx_n_u_last_id */
  {__pyx_k_last_update_check_github, sizeof(__pyx_k_last_update_check_github), 0, 1, 1}, /* PyObject cname: __pyx_n_u_last_update_check_github */
  {__pyx_k_latest_release_info, sizeof(__pyx_k_latest_release_info), 0, 1, 1}, /* PyObject cname: __pyx_n_u_latest_release_info */
  {__pyx_k_lending_daily_product_list, sizeof(__pyx_k_lending_daily_product_list), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_lending_daily_product_list */
  {__pyx_k_lending_daily_purchase, sizeof(__pyx_k_lending_daily_purchase), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_lending_daily_purchase */
  {__pyx_k_lending_daily_redeem, sizeof(__pyx_k_lending_daily_redeem), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_lending_daily_redeem */
  {__pyx_k_lending_daily_token_position, sizeof(__pyx_k_lending_daily_token_position), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_lending_daily_token_position */
  {__pyx_k_lending_daily_userLeftQuota, sizeof(__pyx_k_lending_daily_userLeftQuota), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_lending_daily_userLeftQuota */
  {__pyx_k_lending_daily_userRedemptionQuot, sizeof(__pyx_k_lending_daily_userRedemptionQuot), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_lending_daily_userRedemptionQuot */
  {__pyx_k_lending_positionChanged, sizeof(__pyx_k_lending_positionChanged), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_lending_positionChanged */
  {__pyx_k_lending_project_list, sizeof(__pyx_k_lending_project_list), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_lending_project_list */
  {__pyx_k_lending_union_account, sizeof(__pyx_k_lending_union_account), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_lending_union_account */
  {__pyx_k_lending_union_interestHistory, sizeof(__pyx_k_lending_union_interestHistory), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_lending_union_interestHistory */
  {__pyx_k_lending_union_purchaseRecord, sizeof(__pyx_k_lending_union_purchaseRecord), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_lending_union_purchaseRecord */
  {__pyx_k_lending_union_redemptionRecord, sizeof(__pyx_k_lending_union_redemptionRecord), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_lending_union_redemptionRecord */
  {__pyx_k_leverage, sizeof(__pyx_k_leverage), 0, 1, 1}, /* PyObject cname: __pyx_n_u_leverage */
  {__pyx_k_leverageBracket, sizeof(__pyx_k_leverageBracket), 0, 1, 1}, /* PyObject cname: __pyx_n_u_leverageBracket */
  {__pyx_k_limit, sizeof(__pyx_k_limit), 0, 1, 1}, /* PyObject cname: __pyx_n_u_limit */
  {__pyx_k_listenKey, sizeof(__pyx_k_listenKey), 0, 1, 1}, /* PyObject cname: __pyx_n_u_listenKey */
  {__pyx_k_logger, sizeof(__pyx_k_logger), 0, 1, 1}, /* PyObject cname: __pyx_n_u_logger */
  {__pyx_k_logger_2, sizeof(__pyx_k_logger_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_logger_2 */
  {__pyx_k_logging, sizeof(__pyx_k_logging), 0, 1, 1}, /* PyObject cname: __pyx_n_u_logging */
  {__pyx_k_lower, sizeof(__pyx_k_lower), 0, 1, 1}, /* PyObject cname: __pyx_n_u_lower */
  {__pyx_k_m, sizeof(__pyx_k_m), 0, 1, 1}, /* PyObject cname: __pyx_n_u_m */
  {__pyx_k_main, sizeof(__pyx_k_main), 0, 1, 1}, /* PyObject cname: __pyx_n_u_main */
  {__pyx_k_make_subaccount_futures_transfer, sizeof(__pyx_k_make_subaccount_futures_transfer), 0, 1, 1}, /* PyObject cname: __pyx_n_u_make_subaccount_futures_transfer */
  {__pyx_k_make_subaccount_margin_transfer, sizeof(__pyx_k_make_subaccount_margin_transfer), 0, 1, 1}, /* PyObject cname: __pyx_n_u_make_subaccount_margin_transfer */
  {__pyx_k_make_subaccount_to_master_transf, sizeof(__pyx_k_make_subaccount_to_master_transf), 0, 1, 1}, /* PyObject cname: __pyx_n_u_make_subaccount_to_master_transf */
  {__pyx_k_make_subaccount_to_subaccount_tr, sizeof(__pyx_k_make_subaccount_to_subaccount_tr), 0, 1, 1}, /* PyObject cname: __pyx_n_u_make_subaccount_to_subaccount_tr */
  {__pyx_k_make_universal_transfer, sizeof(__pyx_k_make_universal_transfer), 0, 1, 1}, /* PyObject cname: __pyx_n_u_make_universal_transfer */
  {__pyx_k_marginType, sizeof(__pyx_k_marginType), 0, 1, 1}, /* PyObject cname: __pyx_n_u_marginType */
  {__pyx_k_margin_account, sizeof(__pyx_k_margin_account), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_margin_account */
  {__pyx_k_margin_allOrderList, sizeof(__pyx_k_margin_allOrderList), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_margin_allOrderList */
  {__pyx_k_margin_allOrders, sizeof(__pyx_k_margin_allOrders), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_margin_allOrders */
  {__pyx_k_margin_asset, sizeof(__pyx_k_margin_asset), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_margin_asset */
  {__pyx_k_margin_isolated_account, sizeof(__pyx_k_margin_isolated_account), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_margin_isolated_account */
  {__pyx_k_margin_isolated_allPairs, sizeof(__pyx_k_margin_isolated_allPairs), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_margin_isolated_allPairs */
  {__pyx_k_margin_isolated_create, sizeof(__pyx_k_margin_isolated_create), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_margin_isolated_create */
  {__pyx_k_margin_isolated_pair, sizeof(__pyx_k_margin_isolated_pair), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_margin_isolated_pair */
  {__pyx_k_margin_isolated_transfer, sizeof(__pyx_k_margin_isolated_transfer), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_margin_isolated_transfer */
  {__pyx_k_margin_loan, sizeof(__pyx_k_margin_loan), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_margin_loan */
  {__pyx_k_margin_maxBorrowable, sizeof(__pyx_k_margin_maxBorrowable), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_margin_maxBorrowable */
  {__pyx_k_margin_maxTransferable, sizeof(__pyx_k_margin_maxTransferable), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_margin_maxTransferable */
  {__pyx_k_margin_myTrades, sizeof(__pyx_k_margin_myTrades), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_margin_myTrades */
  {__pyx_k_margin_openOrders, sizeof(__pyx_k_margin_openOrders), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_margin_openOrders */
  {__pyx_k_margin_order, sizeof(__pyx_k_margin_order), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_margin_order */
  {__pyx_k_margin_orderList, sizeof(__pyx_k_margin_orderList), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_margin_orderList */
  {__pyx_k_margin_order_oco, sizeof(__pyx_k_margin_order_oco), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_margin_order_oco */
  {__pyx_k_margin_pair, sizeof(__pyx_k_margin_pair), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_margin_pair */
  {__pyx_k_margin_priceIndex, sizeof(__pyx_k_margin_priceIndex), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_margin_priceIndex */
  {__pyx_k_margin_repay, sizeof(__pyx_k_margin_repay), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_margin_repay */
  {__pyx_k_margin_stream_close, sizeof(__pyx_k_margin_stream_close), 0, 1, 1}, /* PyObject cname: __pyx_n_u_margin_stream_close */
  {__pyx_k_margin_stream_get_listen_key, sizeof(__pyx_k_margin_stream_get_listen_key), 0, 1, 1}, /* PyObject cname: __pyx_n_u_margin_stream_get_listen_key */
  {__pyx_k_margin_stream_keepalive, sizeof(__pyx_k_margin_stream_keepalive), 0, 1, 1}, /* PyObject cname: __pyx_n_u_margin_stream_keepalive */
  {__pyx_k_margin_transfer, sizeof(__pyx_k_margin_transfer), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_margin_transfer */
  {__pyx_k_markPriceKlines, sizeof(__pyx_k_markPriceKlines), 0, 1, 1}, /* PyObject cname: __pyx_n_u_markPriceKlines */
  {__pyx_k_metaclass, sizeof(__pyx_k_metaclass), 0, 1, 1}, /* PyObject cname: __pyx_n_u_metaclass */
  {__pyx_k_method, sizeof(__pyx_k_method), 0, 1, 1}, /* PyObject cname: __pyx_n_u_method */
  {__pyx_k_module, sizeof(__pyx_k_module), 0, 1, 1}, /* PyObject cname: __pyx_n_u_module */
  {__pyx_k_mro_entries, sizeof(__pyx_k_mro_entries), 0, 1, 1}, /* PyObject cname: __pyx_n_u_mro_entries */
  {__pyx_k_msg, sizeof(__pyx_k_msg), 0, 1, 1}, /* PyObject cname: __pyx_n_u_msg */
  {__pyx_k_myTrades, sizeof(__pyx_k_myTrades), 0, 1, 1}, /* PyObject cname: __pyx_n_u_myTrades */
  {__pyx_k_name, sizeof(__pyx_k_name), 0, 1, 1}, /* PyObject cname: __pyx_n_u_name */
  {__pyx_k_name_2, sizeof(__pyx_k_name_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_name_2 */
  {__pyx_k_new, sizeof(__pyx_k_new), 0, 1, 1}, /* PyObject cname: __pyx_n_u_new */
  {__pyx_k_new_transfer_history, sizeof(__pyx_k_new_transfer_history), 0, 1, 1}, /* PyObject cname: __pyx_n_u_new_transfer_history */
  {__pyx_k_next, sizeof(__pyx_k_next), 0, 1, 1}, /* PyObject cname: __pyx_n_u_next */
  {__pyx_k_null_args, sizeof(__pyx_k_null_args), 0, 1, 1}, /* PyObject cname: __pyx_n_u_null_args */
  {__pyx_k_o, sizeof(__pyx_k_o), 0, 1, 1}, /* PyObject cname: __pyx_n_u_o */
  {__pyx_k_object, sizeof(__pyx_k_object), 0, 1, 1}, /* PyObject cname: __pyx_n_u_object */
  {__pyx_k_openInterest, sizeof(__pyx_k_openInterest), 0, 1, 1}, /* PyObject cname: __pyx_n_u_openInterest */
  {__pyx_k_openInterestHist, sizeof(__pyx_k_openInterestHist), 0, 1, 1}, /* PyObject cname: __pyx_n_u_openInterestHist */
  {__pyx_k_openOrders, sizeof(__pyx_k_openOrders), 0, 1, 1}, /* PyObject cname: __pyx_n_u_openOrders */
  {__pyx_k_operator, sizeof(__pyx_k_operator), 0, 1, 1}, /* PyObject cname: __pyx_n_u_operator */
  {__pyx_k_options, sizeof(__pyx_k_options), 0, 1, 1}, /* PyObject cname: __pyx_n_u_options */
  {__pyx_k_order, sizeof(__pyx_k_order), 0, 1, 1}, /* PyObject cname: __pyx_n_u_order */
  {__pyx_k_order_limit, sizeof(__pyx_k_order_limit), 0, 1, 1}, /* PyObject cname: __pyx_n_u_order_limit */
  {__pyx_k_order_limit_buy, sizeof(__pyx_k_order_limit_buy), 0, 1, 1}, /* PyObject cname: __pyx_n_u_order_limit_buy */
  {__pyx_k_order_limit_sell, sizeof(__pyx_k_order_limit_sell), 0, 1, 1}, /* PyObject cname: __pyx_n_u_order_limit_sell */
  {__pyx_k_order_market, sizeof(__pyx_k_order_market), 0, 1, 1}, /* PyObject cname: __pyx_n_u_order_market */
  {__pyx_k_order_market_buy, sizeof(__pyx_k_order_market_buy), 0, 1, 1}, /* PyObject cname: __pyx_n_u_order_market_buy */
  {__pyx_k_order_market_sell, sizeof(__pyx_k_order_market_sell), 0, 1, 1}, /* PyObject cname: __pyx_n_u_order_market_sell */
  {__pyx_k_order_oco, sizeof(__pyx_k_order_oco), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_order_oco */
  {__pyx_k_order_oco_buy, sizeof(__pyx_k_order_oco_buy), 0, 1, 1}, /* PyObject cname: __pyx_n_u_order_oco_buy */
  {__pyx_k_order_oco_sell, sizeof(__pyx_k_order_oco_sell), 0, 1, 1}, /* PyObject cname: __pyx_n_u_order_oco_sell */
  {__pyx_k_order_params, sizeof(__pyx_k_order_params), 0, 1, 1}, /* PyObject cname: __pyx_n_u_order_params */
  {__pyx_k_order_test, sizeof(__pyx_k_order_test), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_order_test */
  {__pyx_k_ordered_data, sizeof(__pyx_k_ordered_data), 0, 1, 1}, /* PyObject cname: __pyx_n_u_ordered_data */
  {__pyx_k_output, sizeof(__pyx_k_output), 0, 1, 1}, /* PyObject cname: __pyx_n_u_output */
  {__pyx_k_output_data, sizeof(__pyx_k_output_data), 0, 1, 1}, /* PyObject cname: __pyx_n_u_output_data */
  {__pyx_k_p, sizeof(__pyx_k_p), 0, 1, 1}, /* PyObject cname: __pyx_n_u_p */
  {__pyx_k_params, sizeof(__pyx_k_params), 0, 1, 1}, /* PyObject cname: __pyx_n_u_params */
  {__pyx_k_path, sizeof(__pyx_k_path), 0, 1, 1}, /* PyObject cname: __pyx_n_u_path */
  {__pyx_k_ping, sizeof(__pyx_k_ping), 0, 1, 1}, /* PyObject cname: __pyx_n_u_ping */
  {__pyx_k_platform, sizeof(__pyx_k_platform), 0, 1, 1}, /* PyObject cname: __pyx_n_u_platform */
  {__pyx_k_pop, sizeof(__pyx_k_pop), 0, 1, 1}, /* PyObject cname: __pyx_n_u_pop */
  {__pyx_k_positionMargin, sizeof(__pyx_k_positionMargin), 0, 1, 1}, /* PyObject cname: __pyx_n_u_positionMargin */
  {__pyx_k_positionMargin_history, sizeof(__pyx_k_positionMargin_history), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_positionMargin_history */
  {__pyx_k_positionRisk, sizeof(__pyx_k_positionRisk), 0, 1, 1}, /* PyObject cname: __pyx_n_u_positionRisk */
  {__pyx_k_positionSide_dual, sizeof(__pyx_k_positionSide_dual), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_positionSide_dual */
  {__pyx_k_post, sizeof(__pyx_k_post), 0, 1, 1}, /* PyObject cname: __pyx_n_u_post */
  {__pyx_k_post_2, sizeof(__pyx_k_post_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_post_2 */
  {__pyx_k_premiumIndex, sizeof(__pyx_k_premiumIndex), 0, 1, 1}, /* PyObject cname: __pyx_n_u_premiumIndex */
  {__pyx_k_prepare, sizeof(__pyx_k_prepare), 0, 1, 1}, /* PyObject cname: __pyx_n_u_prepare */
  {__pyx_k_print, sizeof(__pyx_k_print), 0, 1, 1}, /* PyObject cname: __pyx_n_u_print */
  {__pyx_k_products, sizeof(__pyx_k_products), 0, 1, 1}, /* PyObject cname: __pyx_n_u_products */
  {__pyx_k_proxies, sizeof(__pyx_k_proxies), 0, 1, 1}, /* PyObject cname: __pyx_n_u_proxies */
  {__pyx_k_purchase_lending_product, sizeof(__pyx_k_purchase_lending_product), 0, 1, 1}, /* PyObject cname: __pyx_n_u_purchase_lending_product */
  {__pyx_k_put, sizeof(__pyx_k_put), 0, 1, 1}, /* PyObject cname: __pyx_n_u_put */
  {__pyx_k_put_2, sizeof(__pyx_k_put_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_put_2 */
  {__pyx_k_python, sizeof(__pyx_k_python), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_python */
  {__pyx_k_python_version, sizeof(__pyx_k_python_version), 0, 1, 1}, /* PyObject cname: __pyx_n_u_python_version */
  {__pyx_k_q, sizeof(__pyx_k_q), 0, 1, 1}, /* PyObject cname: __pyx_n_u_q */
  {__pyx_k_qualname, sizeof(__pyx_k_qualname), 0, 1, 1}, /* PyObject cname: __pyx_n_u_qualname */
  {__pyx_k_query_string, sizeof(__pyx_k_query_string), 0, 1, 1}, /* PyObject cname: __pyx_n_u_query_string */
  {__pyx_k_query_subaccount_spot_summary, sizeof(__pyx_k_query_subaccount_spot_summary), 0, 1, 1}, /* PyObject cname: __pyx_n_u_query_subaccount_spot_summary */
  {__pyx_k_query_universal_transfer_history, sizeof(__pyx_k_query_universal_transfer_history), 0, 1, 1}, /* PyObject cname: __pyx_n_u_query_universal_transfer_history */
  {__pyx_k_raw_data, sizeof(__pyx_k_raw_data), 0, 1, 1}, /* PyObject cname: __pyx_n_u_raw_data */
  {__pyx_k_redeem_lending_product, sizeof(__pyx_k_redeem_lending_product), 0, 1, 1}, /* PyObject cname: __pyx_n_u_redeem_lending_product */
  {__pyx_k_release, sizeof(__pyx_k_release), 0, 1, 1}, /* PyObject cname: __pyx_n_u_release */
  {__pyx_k_repay_margin_loan, sizeof(__pyx_k_repay_margin_loan), 0, 1, 1}, /* PyObject cname: __pyx_n_u_repay_margin_loan */
  {__pyx_k_replace, sizeof(__pyx_k_replace), 0, 1, 1}, /* PyObject cname: __pyx_n_u_replace */
  {__pyx_k_request, sizeof(__pyx_k_request), 0, 1, 1}, /* PyObject cname: __pyx_n_u_request */
  {__pyx_k_request_Got_api_key_and_api_sec, sizeof(__pyx_k_request_Got_api_key_and_api_sec), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_request_Got_api_key_and_api_sec */
  {__pyx_k_request_api, sizeof(__pyx_k_request_api), 0, 1, 1}, /* PyObject cname: __pyx_n_u_request_api */
  {__pyx_k_request_futures_api, sizeof(__pyx_k_request_futures_api), 0, 1, 1}, /* PyObject cname: __pyx_n_u_request_futures_api */
  {__pyx_k_request_futures_coin_api, sizeof(__pyx_k_request_futures_coin_api), 0, 1, 1}, /* PyObject cname: __pyx_n_u_request_futures_coin_api */
  {__pyx_k_request_futures_coin_data_api, sizeof(__pyx_k_request_futures_coin_data_api), 0, 1, 1}, /* PyObject cname: __pyx_n_u_request_futures_coin_data_api */
  {__pyx_k_request_futures_data_api, sizeof(__pyx_k_request_futures_data_api), 0, 1, 1}, /* PyObject cname: __pyx_n_u_request_futures_data_api */
  {__pyx_k_request_margin_api, sizeof(__pyx_k_request_margin_api), 0, 1, 1}, /* PyObject cname: __pyx_n_u_request_margin_api */
  {__pyx_k_request_socks5_proxies, sizeof(__pyx_k_request_socks5_proxies), 0, 1, 1}, /* PyObject cname: __pyx_n_u_request_socks5_proxies */
  {__pyx_k_request_website, sizeof(__pyx_k_request_website), 0, 1, 1}, /* PyObject cname: __pyx_n_u_request_website */
  {__pyx_k_requests, sizeof(__pyx_k_requests), 0, 1, 1}, /* PyObject cname: __pyx_n_u_requests */
  {__pyx_k_requests_params, sizeof(__pyx_k_requests_params), 0, 1, 1}, /* PyObject cname: __pyx_n_u_requests_params */
  {__pyx_k_requests_params_2, sizeof(__pyx_k_requests_params_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_requests_params_2 */
  {__pyx_k_res, sizeof(__pyx_k_res), 0, 1, 1}, /* PyObject cname: __pyx_n_u_res */
  {__pyx_k_respond, sizeof(__pyx_k_respond), 0, 1, 1}, /* PyObject cname: __pyx_n_u_respond */
  {__pyx_k_response, sizeof(__pyx_k_response), 0, 1, 1}, /* PyObject cname: __pyx_n_u_response */
  {__pyx_k_result, sizeof(__pyx_k_result), 0, 1, 1}, /* PyObject cname: __pyx_n_u_result */
  {__pyx_k_return, sizeof(__pyx_k_return), 0, 1, 1}, /* PyObject cname: __pyx_n_u_return */
  {__pyx_k_reversed, sizeof(__pyx_k_reversed), 0, 1, 1}, /* PyObject cname: __pyx_n_u_reversed */
  {__pyx_k_save_used_weight, sizeof(__pyx_k_save_used_weight), 0, 1, 1}, /* PyObject cname: __pyx_n_u_save_used_weight */
  {__pyx_k_self, sizeof(__pyx_k_self), 0, 1, 1}, /* PyObject cname: __pyx_n_u_self */
  {__pyx_k_self_API_URL, sizeof(__pyx_k_self_API_URL), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_self_API_URL */
  {__pyx_k_self_FUTURES_COIN_DATA_URL, sizeof(__pyx_k_self_FUTURES_COIN_DATA_URL), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_self_FUTURES_COIN_DATA_URL */
  {__pyx_k_self_FUTURES_COIN_URL, sizeof(__pyx_k_self_FUTURES_COIN_URL), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_self_FUTURES_COIN_URL */
  {__pyx_k_self_FUTURES_DATA_URL, sizeof(__pyx_k_self_FUTURES_DATA_URL), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_self_FUTURES_DATA_URL */
  {__pyx_k_self_FUTURES_URL, sizeof(__pyx_k_self_FUTURES_URL), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_self_FUTURES_URL */
  {__pyx_k_self_MARGIN_API_URL, sizeof(__pyx_k_self_MARGIN_API_URL), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_self_MARGIN_API_URL */
  {__pyx_k_self_WEBSITE_URL, sizeof(__pyx_k_self_WEBSITE_URL), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_self_WEBSITE_URL */
  {__pyx_k_send, sizeof(__pyx_k_send), 0, 1, 1}, /* PyObject cname: __pyx_n_u_send */
  {__pyx_k_serverTime, sizeof(__pyx_k_serverTime), 0, 1, 1}, /* PyObject cname: __pyx_n_u_serverTime */
  {__pyx_k_session, sizeof(__pyx_k_session), 0, 1, 1}, /* PyObject cname: __pyx_n_u_session */
  {__pyx_k_set_name, sizeof(__pyx_k_set_name), 0, 1, 1}, /* PyObject cname: __pyx_n_u_set_name */
  {__pyx_k_sha256, sizeof(__pyx_k_sha256), 0, 1, 1}, /* PyObject cname: __pyx_n_u_sha256 */
  {__pyx_k_side, sizeof(__pyx_k_side), 0, 1, 1}, /* PyObject cname: __pyx_n_u_side */
  {__pyx_k_signature, sizeof(__pyx_k_signature), 0, 1, 1}, /* PyObject cname: __pyx_n_u_signature */
  {__pyx_k_signed, sizeof(__pyx_k_signed), 0, 1, 1}, /* PyObject cname: __pyx_n_u_signed */
  {__pyx_k_sigterm, sizeof(__pyx_k_sigterm), 0, 1, 1}, /* PyObject cname: __pyx_n_u_sigterm */
  {__pyx_k_sleep, sizeof(__pyx_k_sleep), 0, 1, 1}, /* PyObject cname: __pyx_n_u_sleep */
  {__pyx_k_socks5, sizeof(__pyx_k_socks5), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_socks5 */
  {__pyx_k_socks5_proxy_address, sizeof(__pyx_k_socks5_proxy_address), 0, 1, 1}, /* PyObject cname: __pyx_n_u_socks5_proxy_address */
  {__pyx_k_socks5_proxy_pass, sizeof(__pyx_k_socks5_proxy_pass), 0, 1, 1}, /* PyObject cname: __pyx_n_u_socks5_proxy_pass */
  {__pyx_k_socks5_proxy_port, sizeof(__pyx_k_socks5_proxy_port), 0, 1, 1}, /* PyObject cname: __pyx_n_u_socks5_proxy_port */
  {__pyx_k_socks5_proxy_server, sizeof(__pyx_k_socks5_proxy_server), 0, 1, 1}, /* PyObject cname: __pyx_n_u_socks5_proxy_server */
  {__pyx_k_socks5_proxy_ssl_verification, sizeof(__pyx_k_socks5_proxy_ssl_verification), 0, 1, 1}, /* PyObject cname: __pyx_n_u_socks5_proxy_ssl_verification */
  {__pyx_k_socks5_proxy_user, sizeof(__pyx_k_socks5_proxy_user), 0, 1, 1}, /* PyObject cname: __pyx_n_u_socks5_proxy_user */
  {__pyx_k_socks_proxy_uri, sizeof(__pyx_k_socks_proxy_uri), 0, 1, 1}, /* PyObject cname: __pyx_n_u_socks_proxy_uri */
  {__pyx_k_sort, sizeof(__pyx_k_sort), 0, 1, 1}, /* PyObject cname: __pyx_n_u_sort */
  {__pyx_k_spec, sizeof(__pyx_k_spec), 0, 1, 1}, /* PyObject cname: __pyx_n_u_spec */
  {__pyx_k_startTime, sizeof(__pyx_k_startTime), 0, 1, 1}, /* PyObject cname: __pyx_n_u_startTime */
  {__pyx_k_start_str, sizeof(__pyx_k_start_str), 0, 1, 1}, /* PyObject cname: __pyx_n_u_start_str */
  {__pyx_k_start_time_and_last_id_may_not_b, sizeof(__pyx_k_start_time_and_last_id_may_not_b), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_start_time_and_last_id_may_not_b */
  {__pyx_k_start_ts, sizeof(__pyx_k_start_ts), 0, 1, 1}, /* PyObject cname: __pyx_n_u_start_ts */
  {__pyx_k_started, sizeof(__pyx_k_started), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_started */
  {__pyx_k_staticmethod, sizeof(__pyx_k_staticmethod), 0, 1, 1}, /* PyObject cname: __pyx_n_u_staticmethod */
  {__pyx_k_status, sizeof(__pyx_k_status), 0, 1, 1}, /* PyObject cname: __pyx_n_u_status */
  {__pyx_k_status_code, sizeof(__pyx_k_status_code), 0, 1, 1}, /* PyObject cname: __pyx_n_u_status_code */
  {__pyx_k_stop_manager, sizeof(__pyx_k_stop_manager), 0, 1, 1}, /* PyObject cname: __pyx_n_u_stop_manager */
  {__pyx_k_str, sizeof(__pyx_k_str), 0, 1, 1}, /* PyObject cname: __pyx_n_u_str */
  {__pyx_k_stream_close, sizeof(__pyx_k_stream_close), 0, 1, 1}, /* PyObject cname: __pyx_n_u_stream_close */
  {__pyx_k_stream_get_listen_key, sizeof(__pyx_k_stream_get_listen_key), 0, 1, 1}, /* PyObject cname: __pyx_n_u_stream_get_listen_key */
  {__pyx_k_stream_keepalive, sizeof(__pyx_k_stream_keepalive), 0, 1, 1}, /* PyObject cname: __pyx_n_u_stream_keepalive */
  {__pyx_k_strptime, sizeof(__pyx_k_strptime), 0, 1, 1}, /* PyObject cname: __pyx_n_u_strptime */
  {__pyx_k_sub_account_assets, sizeof(__pyx_k_sub_account_assets), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_sub_account_assets */
  {__pyx_k_sub_account_futures_account, sizeof(__pyx_k_sub_account_futures_account), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_sub_account_futures_account */
  {__pyx_k_sub_account_futures_accountSumma, sizeof(__pyx_k_sub_account_futures_accountSumma), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_sub_account_futures_accountSumma */
  {__pyx_k_sub_account_futures_enable, sizeof(__pyx_k_sub_account_futures_enable), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_sub_account_futures_enable */
  {__pyx_k_sub_account_futures_internalTran, sizeof(__pyx_k_sub_account_futures_internalTran), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_sub_account_futures_internalTran */
  {__pyx_k_sub_account_futures_positionRisk, sizeof(__pyx_k_sub_account_futures_positionRisk), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_sub_account_futures_positionRisk */
  {__pyx_k_sub_account_futures_transfer, sizeof(__pyx_k_sub_account_futures_transfer), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_sub_account_futures_transfer */
  {__pyx_k_sub_account_list, sizeof(__pyx_k_sub_account_list), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_sub_account_list */
  {__pyx_k_sub_account_margin_account, sizeof(__pyx_k_sub_account_margin_account), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_sub_account_margin_account */
  {__pyx_k_sub_account_margin_accountSummar, sizeof(__pyx_k_sub_account_margin_accountSummar), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_sub_account_margin_accountSummar */
  {__pyx_k_sub_account_margin_enable, sizeof(__pyx_k_sub_account_margin_enable), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_sub_account_margin_enable */
  {__pyx_k_sub_account_margin_transfer, sizeof(__pyx_k_sub_account_margin_transfer), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_sub_account_margin_transfer */
  {__pyx_k_sub_account_spotSummary, sizeof(__pyx_k_sub_account_spotSummary), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_sub_account_spotSummary */
  {__pyx_k_sub_account_status, sizeof(__pyx_k_sub_account_status), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_sub_account_status */
  {__pyx_k_sub_account_sub_transfer_history, sizeof(__pyx_k_sub_account_sub_transfer_history), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_sub_account_sub_transfer_history */
  {__pyx_k_sub_account_transfer_subToMaster, sizeof(__pyx_k_sub_account_transfer_subToMaster), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_sub_account_transfer_subToMaster */
  {__pyx_k_sub_account_transfer_subToSub, sizeof(__pyx_k_sub_account_transfer_subToSub), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_sub_account_transfer_subToSub */
  {__pyx_k_sub_account_transfer_subUserHist, sizeof(__pyx_k_sub_account_transfer_subUserHist), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_sub_account_transfer_subUserHist */
  {__pyx_k_sub_account_universalTransfer, sizeof(__pyx_k_sub_account_universalTransfer), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_sub_account_universalTransfer */
  {__pyx_k_success, sizeof(__pyx_k_success), 0, 1, 1}, /* PyObject cname: __pyx_n_u_success */
  {__pyx_k_symbol, sizeof(__pyx_k_symbol), 0, 1, 1}, /* PyObject cname: __pyx_n_u_symbol */
  {__pyx_k_symbols, sizeof(__pyx_k_symbols), 0, 1, 1}, /* PyObject cname: __pyx_n_u_symbols */
  {__pyx_k_system, sizeof(__pyx_k_system), 0, 1, 1}, /* PyObject cname: __pyx_n_u_system */
  {__pyx_k_system_status, sizeof(__pyx_k_system_status), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_system_status */
  {__pyx_k_t, sizeof(__pyx_k_t), 0, 1, 1}, /* PyObject cname: __pyx_n_u_t */
  {__pyx_k_tag_name, sizeof(__pyx_k_tag_name), 0, 1, 1}, /* PyObject cname: __pyx_n_u_tag_name */
  {__pyx_k_temp_data, sizeof(__pyx_k_temp_data), 0, 1, 1}, /* PyObject cname: __pyx_n_u_temp_data */
  {__pyx_k_test, sizeof(__pyx_k_test), 0, 1, 1}, /* PyObject cname: __pyx_n_u_test */
  {__pyx_k_text, sizeof(__pyx_k_text), 0, 1, 1}, /* PyObject cname: __pyx_n_u_text */
  {__pyx_k_throw, sizeof(__pyx_k_throw), 0, 1, 1}, /* PyObject cname: __pyx_n_u_throw */
  {__pyx_k_throw_exception, sizeof(__pyx_k_throw_exception), 0, 1, 1}, /* PyObject cname: __pyx_n_u_throw_exception */
  {__pyx_k_ticker_24hr, sizeof(__pyx_k_ticker_24hr), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_ticker_24hr */
  {__pyx_k_ticker_allForceOrders, sizeof(__pyx_k_ticker_allForceOrders), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_ticker_allForceOrders */
  {__pyx_k_ticker_bookTicker, sizeof(__pyx_k_ticker_bookTicker), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_ticker_bookTicker */
  {__pyx_k_ticker_openInterest, sizeof(__pyx_k_ticker_openInterest), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_ticker_openInterest */
  {__pyx_k_ticker_price, sizeof(__pyx_k_ticker_price), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_ticker_price */
  {__pyx_k_time, sizeof(__pyx_k_time), 0, 1, 1}, /* PyObject cname: __pyx_n_u_time */
  {__pyx_k_timeInForce, sizeof(__pyx_k_timeInForce), 0, 1, 1}, /* PyObject cname: __pyx_n_u_timeInForce */
  {__pyx_k_timeframe, sizeof(__pyx_k_timeframe), 0, 1, 1}, /* PyObject cname: __pyx_n_u_timeframe */
  {__pyx_k_timeout, sizeof(__pyx_k_timeout), 0, 1, 1}, /* PyObject cname: __pyx_n_u_timeout */
  {__pyx_k_timestamp, sizeof(__pyx_k_timestamp), 0, 1, 1}, /* PyObject cname: __pyx_n_u_timestamp */
  {__pyx_k_timestamp_offset, sizeof(__pyx_k_timestamp_offset), 0, 1, 1}, /* PyObject cname: __pyx_n_u_timestamp_offset */
  {__pyx_k_tld, sizeof(__pyx_k_tld), 0, 1, 1}, /* PyObject cname: __pyx_n_u_tld */
  {__pyx_k_tld_2, sizeof(__pyx_k_tld_2), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_tld_2 */
  {__pyx_k_toggle_bnb_burn_spot_margin, sizeof(__pyx_k_toggle_bnb_burn_spot_margin), 0, 1, 1}, /* PyObject cname: __pyx_n_u_toggle_bnb_burn_spot_margin */
  {__pyx_k_trades, sizeof(__pyx_k_trades), 0, 1, 1}, /* PyObject cname: __pyx_n_u_trades */
  {__pyx_k_transFrom, sizeof(__pyx_k_transFrom), 0, 1, 1}, /* PyObject cname: __pyx_n_u_transFrom */
  {__pyx_k_transTo, sizeof(__pyx_k_transTo), 0, 1, 1}, /* PyObject cname: __pyx_n_u_transTo */
  {__pyx_k_transfer_dust, sizeof(__pyx_k_transfer_dust), 0, 1, 1}, /* PyObject cname: __pyx_n_u_transfer_dust */
  {__pyx_k_transfer_history, sizeof(__pyx_k_transfer_history), 0, 1, 1}, /* PyObject cname: __pyx_n_u_transfer_history */
  {__pyx_k_transfer_isolated_margin_to_spot, sizeof(__pyx_k_transfer_isolated_margin_to_spot), 0, 1, 1}, /* PyObject cname: __pyx_n_u_transfer_isolated_margin_to_spot */
  {__pyx_k_transfer_margin_to_spot, sizeof(__pyx_k_transfer_margin_to_spot), 0, 1, 1}, /* PyObject cname: __pyx_n_u_transfer_margin_to_spot */
  {__pyx_k_transfer_spot_to_isolated_margin, sizeof(__pyx_k_transfer_spot_to_isolated_margin), 0, 1, 1}, /* PyObject cname: __pyx_n_u_transfer_spot_to_isolated_margin */
  {__pyx_k_transfer_spot_to_margin, sizeof(__pyx_k_transfer_spot_to_margin), 0, 1, 1}, /* PyObject cname: __pyx_n_u_transfer_spot_to_margin */
  {__pyx_k_trbinance_com, sizeof(__pyx_k_trbinance_com), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_trbinance_com */
  {__pyx_k_type, sizeof(__pyx_k_type), 0, 1, 1}, /* PyObject cname: __pyx_n_u_type */
  {__pyx_k_typing, sizeof(__pyx_k_typing), 0, 1, 1}, /* PyObject cname: __pyx_n_u_typing */
  {__pyx_k_unicorn_binance_rest_api, sizeof(__pyx_k_unicorn_binance_rest_api), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_unicorn_binance_rest_api */
  {__pyx_k_unicorn_binance_rest_api_2, sizeof(__pyx_k_unicorn_binance_rest_api_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_unicorn_binance_rest_api_2 */
  {__pyx_k_unicorn_binance_rest_api_manager, sizeof(__pyx_k_unicorn_binance_rest_api_manager), 0, 1, 1}, /* PyObject cname: __pyx_n_u_unicorn_binance_rest_api_manager */
  {__pyx_k_unicorn_binance_rest_api_manager_2, sizeof(__pyx_k_unicorn_binance_rest_api_manager_2), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_unicorn_binance_rest_api_manager_2 */
  {__pyx_k_universal_transfer, sizeof(__pyx_k_universal_transfer), 0, 1, 1}, /* PyObject cname: __pyx_n_u_universal_transfer */
  {__pyx_k_unknown, sizeof(__pyx_k_unknown), 0, 1, 1}, /* PyObject cname: __pyx_n_u_unknown */
  {__pyx_k_update, sizeof(__pyx_k_update), 0, 1, 1}, /* PyObject cname: __pyx_n_u_update */
  {__pyx_k_update_msg, sizeof(__pyx_k_update_msg), 0, 1, 1}, /* PyObject cname: __pyx_n_u_update_msg */
  {__pyx_k_upper, sizeof(__pyx_k_upper), 0, 1, 1}, /* PyObject cname: __pyx_n_u_upper */
  {__pyx_k_uri, sizeof(__pyx_k_uri), 0, 1, 1}, /* PyObject cname: __pyx_n_u_uri */
  {__pyx_k_url, sizeof(__pyx_k_url), 0, 1, 1}, /* PyObject cname: __pyx_n_u_url */
  {__pyx_k_urlencode, sizeof(__pyx_k_urlencode), 0, 1, 1}, /* PyObject cname: __pyx_n_u_urlencode */
  {__pyx_k_urllib_parse, sizeof(__pyx_k_urllib_parse), 0, 1, 1}, /* PyObject cname: __pyx_n_u_urllib_parse */
  {__pyx_k_used_weight, sizeof(__pyx_k_used_weight), 0, 1, 1}, /* PyObject cname: __pyx_n_u_used_weight */
  {__pyx_k_userDataStream, sizeof(__pyx_k_userDataStream), 0, 1, 1}, /* PyObject cname: __pyx_n_u_userDataStream */
  {__pyx_k_userDataStream_isolated, sizeof(__pyx_k_userDataStream_isolated), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_userDataStream_isolated */
  {__pyx_k_userTrades, sizeof(__pyx_k_userTrades), 0, 1, 1}, /* PyObject cname: __pyx_n_u_userTrades */
  {__pyx_k_user_agent, sizeof(__pyx_k_user_agent), 0, 1, 1}, /* PyObject cname: __pyx_n_u_user_agent */
  {__pyx_k_utf_8, sizeof(__pyx_k_utf_8), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_utf_8 */
  {__pyx_k_v, sizeof(__pyx_k_v), 0, 1, 1}, /* PyObject cname: __pyx_n_u_v */
  {__pyx_k_v1, sizeof(__pyx_k_v1), 0, 1, 1}, /* PyObject cname: __pyx_n_u_v1 */
  {__pyx_k_v2, sizeof(__pyx_k_v2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_v2 */
  {__pyx_k_v3, sizeof(__pyx_k_v3), 0, 1, 1}, /* PyObject cname: __pyx_n_u_v3 */
  {__pyx_k_value, sizeof(__pyx_k_value), 0, 1, 1}, /* PyObject cname: __pyx_n_u_value */
  {__pyx_k_verify, sizeof(__pyx_k_verify), 0, 1, 1}, /* PyObject cname: __pyx_n_u_verify */
  {__pyx_k_version, sizeof(__pyx_k_version), 0, 1, 1}, /* PyObject cname: __pyx_n_u_version */
  {__pyx_k_version_2, sizeof(__pyx_k_version_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_version_2 */
  {__pyx_k_warn_on_update, sizeof(__pyx_k_warn_on_update), 0, 1, 1}, /* PyObject cname: __pyx_n_u_warn_on_update */
  {__pyx_k_warning, sizeof(__pyx_k_warning), 0, 1, 1}, /* PyObject cname: __pyx_n_u_warning */
  {__pyx_k_weight, sizeof(__pyx_k_weight), 0, 1, 1}, /* PyObject cname: __pyx_n_u_weight */
  {__pyx_k_withdraw, sizeof(__pyx_k_withdraw), 0, 1, 1}, /* PyObject cname: __pyx_n_u_withdraw */
  {__pyx_k_withdrawList, sizeof(__pyx_k_withdrawList), 0, 1, 1}, /* PyObject cname: __pyx_n_u_withdrawList */
  {__pyx_k_withdraw_id, sizeof(__pyx_k_withdraw_id), 0, 1, 1}, /* PyObject cname: __pyx_n_u_withdraw_id */
  {0, 0, 0, 0, 0}
};
/* InitStrings.proto */
static int __Pyx_InitStrings(__Pyx_StringTabEntry const *t, PyObject **target, const char* const* encoding_names);

/* #### Code section: cached_builtins ### */

static int __Pyx_InitCachedBuiltins(__pyx_mstatetype *__pyx_mstate) {
  CYTHON_UNUSED_VAR(__pyx_mstate);
  __pyx_builtin_object = __Pyx_GetBuiltinName(__pyx_mstate->__pyx_n_u_object); if (!__pyx_builtin_object) __PYX_ERR(0, 66, __pyx_L1_error)
  __pyx_builtin_staticmethod = __Pyx_GetBuiltinName(__pyx_mstate->__pyx_n_u_staticmethod); if (!__pyx_builtin_staticmethod) __PYX_ERR(0, 451, __pyx_L1_error)
  __pyx_builtin_print = __Pyx_GetBuiltinName(__pyx_mstate->__pyx_n_u_print); if (!__pyx_builtin_print) __PYX_ERR(0, 366, __pyx_L1_error)
  __pyx_builtin_KeyError = __Pyx_GetBuiltinName(__pyx_mstate->__pyx_n_u_KeyError); if (!__pyx_builtin_KeyError) __PYX_ERR(0, 387, __pyx_L1_error)
  __pyx_builtin_reversed = __Pyx_GetBuiltinName(__pyx_mstate->__pyx_n_u_reversed); if (!__pyx_builtin_reversed) __PYX_ERR(0, 524, __pyx_L1_error)
  __pyx_builtin_enumerate = __Pyx_GetBuiltinName(__pyx_mstate->__pyx_n_u_enumerate); if (!__pyx_builtin_enumerate) __PYX_ERR(0, 523, __pyx_L1_error)
  __pyx_builtin_ValueError = __Pyx_GetBuiltinName(__pyx_mstate->__pyx_n_u_ValueError); if (!__pyx_builtin_ValueError) __PYX_ERR(0, 604, __pyx_L1_error)
  __pyx_builtin_AttributeError = __Pyx_GetBuiltinName(__pyx_mstate->__pyx_n_u_AttributeError); if (!__pyx_builtin_AttributeError) __PYX_ERR(0, 7217, __pyx_L1_error)
  return 0;
  __pyx_L1_error:;
  return -1;
}
/* #### Code section: cached_constants ### */

static int __Pyx_InitCachedConstants(__pyx_mstatetype *__pyx_mstate) {
  __Pyx_RefNannyDeclarations
  CYTHON_UNUSED_VAR(__pyx_mstate);
  __Pyx_RefNannySetupContext("__Pyx_InitCachedConstants", 0);

  /* "unicorn_binance_rest_api/manager.py":627
 *         installed_version = self.get_version()
 *         if ".dev" in installed_version:
 *             installed_version = installed_version[:-4]             # <<<<<<<<<<<<<<
 *         if self.get_latest_version() == installed_version:
 *             return False
*/
  __pyx_mstate_global->__pyx_slice[0] = PySlice_New(Py_None, __pyx_mstate_global->__pyx_int_neg_4, Py_None); if (unlikely(!__pyx_mstate_global->__pyx_slice[0])) __PYX_ERR(0, 627, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_slice[0]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_slice[0]);

  /* "unicorn_binance_rest_api/manager.py":701
 * 
 *         """
 *         products = self._request_website('get', 'exchange-api/v1/public/asset-service/product/get-products')             # <<<<<<<<<<<<<<
 *         return products
 * 
*/
  __pyx_mstate_global->__pyx_tuple[0] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_kp_u_exchange_api_v1_public_asset_ser); if (unlikely(!__pyx_mstate_global->__pyx_tuple[0])) __PYX_ERR(0, 701, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[0]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[0]);

  /* "unicorn_binance_rest_api/manager.py":1140
 *             # fromId=n returns a set starting with id n, but we already have
 *             # that one. So get rid of the first item in the result set.
 *             trades = trades[1:]             # <<<<<<<<<<<<<<
 *             if len(trades) == 0:
 *                 return
*/
  __pyx_mstate_global->__pyx_slice[1] = PySlice_New(__pyx_mstate_global->__pyx_int_1, Py_None, Py_None); if (unlikely(!__pyx_mstate_global->__pyx_slice[1])) __PYX_ERR(0, 1140, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_slice[1]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_slice[1]);

  /* "unicorn_binance_rest_api/manager.py":1657
 *                  BinanceOrderInactiveSymbolException
 *         """
 *         return self._post('order', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def order_limit(self, timeInForce=TIME_IN_FORCE_GTC, **params):
*/
  __pyx_mstate_global->__pyx_tuple[1] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_order, Py_True); if (unlikely(!__pyx_mstate_global->__pyx_tuple[1])) __PYX_ERR(0, 1657, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[1]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[1]);

  /* "unicorn_binance_rest_api/manager.py":1927
 * 
 *         """
 *         return self._post('order/oco', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def order_oco_buy(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[2] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_kp_u_order_oco, Py_True); if (unlikely(!__pyx_mstate_global->__pyx_tuple[2])) __PYX_ERR(0, 1927, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[2]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[2]);

  /* "unicorn_binance_rest_api/manager.py":2055
 * 
 *         """
 *         return self._post('order/test', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_order(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[3] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_kp_u_order_test, Py_True); if (unlikely(!__pyx_mstate_global->__pyx_tuple[3])) __PYX_ERR(0, 2055, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[3]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[3]);

  /* "unicorn_binance_rest_api/manager.py":2135
 * 
 *         """
 *         return self._get('allOrders', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def cancel_all_open_orders(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[4] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_allOrders, Py_True); if (unlikely(!__pyx_mstate_global->__pyx_tuple[4])) __PYX_ERR(0, 2135, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[4]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[4]);

  /* "unicorn_binance_rest_api/manager.py":2248
 * 
 *         """
 *         return self._delete('openOrders', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def cancel_all_open_margin_orders(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[5] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_openOrders, Py_True); if (unlikely(!__pyx_mstate_global->__pyx_tuple[5])) __PYX_ERR(0, 2248, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[5]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[5]);

  /* "unicorn_binance_rest_api/manager.py":2357
 * 
 *         """
 *         return self._request_margin_api('delete', 'margin/openOrders', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def cancel_order(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[6] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_delete, __pyx_mstate_global->__pyx_kp_u_margin_openOrders); if (unlikely(!__pyx_mstate_global->__pyx_tuple[6])) __PYX_ERR(0, 2357, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[6]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[6]);

  /* "unicorn_binance_rest_api/manager.py":2466
 * 
 *         """
 *         return self._get('account', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_asset_balance(self, asset, **params):
*/
  __pyx_mstate_global->__pyx_tuple[7] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_account, Py_True); if (unlikely(!__pyx_mstate_global->__pyx_tuple[7])) __PYX_ERR(0, 2466, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[7]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[7]);

  /* "unicorn_binance_rest_api/manager.py":2534
 * 
 *         """
 *         return self._get('myTrades', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_system_status(self):
*/
  __pyx_mstate_global->__pyx_tuple[8] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_myTrades, Py_True); if (unlikely(!__pyx_mstate_global->__pyx_tuple[8])) __PYX_ERR(0, 2534, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[8]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[8]);

  /* "unicorn_binance_rest_api/manager.py":2553
 * 
 *         """
 *         return self._request_margin_api('get', 'system/status')             # <<<<<<<<<<<<<<
 * 
 *     def get_account_status(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[9] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_kp_u_system_status); if (unlikely(!__pyx_mstate_global->__pyx_tuple[9])) __PYX_ERR(0, 2553, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[9]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[9]);

  /* "unicorn_binance_rest_api/manager.py":2574
 * 
 *         """
 *         res = self._request_margin_api('get', 'account/status', True, data=params)             # <<<<<<<<<<<<<<
 *         if not res.get('success'):
 *             raise BinanceWithdrawException(res['msg'])
*/
  __pyx_mstate_global->__pyx_tuple[10] = PyTuple_Pack(3, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_kp_u_account_status, Py_True); if (unlikely(!__pyx_mstate_global->__pyx_tuple[10])) __PYX_ERR(0, 2574, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[10]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[10]);

  /* "unicorn_binance_rest_api/manager.py":2649
 * 
 *         """
 *         res = self._request_margin_api('get', 'account/apiTradingStatus', True, data=params)             # <<<<<<<<<<<<<<
 *         if not res.get('success'):
 *             raise BinanceWithdrawException(res['msg'])
*/
  __pyx_mstate_global->__pyx_tuple[11] = PyTuple_Pack(3, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_kp_u_account_apiTradingStatus, Py_True); if (unlikely(!__pyx_mstate_global->__pyx_tuple[11])) __PYX_ERR(0, 2649, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[11]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[11]);

  /* "unicorn_binance_rest_api/manager.py":2726
 * 
 *         """
 *         res = self._request_margin_api('get', 'asset/dribblet', True, data=params)             # <<<<<<<<<<<<<<
 *         if not res.get('success'):
 *             raise BinanceWithdrawException(res['msg'])
*/
  __pyx_mstate_global->__pyx_tuple[12] = PyTuple_Pack(3, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_kp_u_asset_dribblet, Py_True); if (unlikely(!__pyx_mstate_global->__pyx_tuple[12])) __PYX_ERR(0, 2726, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[12]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[12]);

  /* "unicorn_binance_rest_api/manager.py":2768
 * 
 *         """
 *         return self._request_margin_api('post', 'asset/dust', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_asset_dividend_history(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[13] = PyTuple_Pack(3, __pyx_mstate_global->__pyx_n_u_post, __pyx_mstate_global->__pyx_kp_u_asset_dust, Py_True); if (unlikely(!__pyx_mstate_global->__pyx_tuple[13])) __PYX_ERR(0, 2768, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[13]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[13]);

  /* "unicorn_binance_rest_api/manager.py":2816
 * 
 *         """
 *         return self._request_margin_api('get', 'asset/assetDividend', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def query_universal_transfer_history(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[14] = PyTuple_Pack(3, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_kp_u_asset_assetDividend, Py_True); if (unlikely(!__pyx_mstate_global->__pyx_tuple[14])) __PYX_ERR(0, 2816, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[14]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[14]);

  /* "unicorn_binance_rest_api/manager.py":2871
 * 
 *         """
 *         return self._request_margin_api('get', 'asset/transfer', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_trade_fee(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[15] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_kp_u_asset_transfer); if (unlikely(!__pyx_mstate_global->__pyx_tuple[15])) __PYX_ERR(0, 2871, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[15]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[15]);

  /* "unicorn_binance_rest_api/manager.py":2903
 * 
 *         """
 *         res = self._request_margin_api('get', 'asset/tradeFee', True, data=params)             # <<<<<<<<<<<<<<
 *         if not res.get('success'):
 *             raise BinanceWithdrawException(res['msg'])
*/
  __pyx_mstate_global->__pyx_tuple[16] = PyTuple_Pack(3, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_kp_u_asset_tradeFee, Py_True); if (unlikely(!__pyx_mstate_global->__pyx_tuple[16])) __PYX_ERR(0, 2903, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[16]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[16]);

  /* "unicorn_binance_rest_api/manager.py":2942
 * 
 *         """
 *         res = self._request_margin_api('get', 'asset/assetDetail', True, data=params)             # <<<<<<<<<<<<<<
 *         if not res.get('success'):
 *             raise BinanceWithdrawException(res['msg'])
*/
  __pyx_mstate_global->__pyx_tuple[17] = PyTuple_Pack(3, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_kp_u_asset_assetDetail, Py_True); if (unlikely(!__pyx_mstate_global->__pyx_tuple[17])) __PYX_ERR(0, 2942, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[17]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[17]);

  /* "unicorn_binance_rest_api/manager.py":2993
 *         if 'asset' in params and 'name' not in params:
 *             params['name'] = params['asset']
 *         res = self._request_margin_api('post', 'capital/withdraw/apply', True, data=params)             # <<<<<<<<<<<<<<
 *         if not res.get('success'):
 *             raise BinanceWithdrawException(res['msg'])
*/
  __pyx_mstate_global->__pyx_tuple[18] = PyTuple_Pack(3, __pyx_mstate_global->__pyx_n_u_post, __pyx_mstate_global->__pyx_kp_u_capital_withdraw_apply, Py_True); if (unlikely(!__pyx_mstate_global->__pyx_tuple[18])) __PYX_ERR(0, 2993, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[18]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[18]);

  /* "unicorn_binance_rest_api/manager.py":3052
 * 
 *         """
 *         return self._request_margin_api('get', 'capital/deposit/hisrec', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_withdraw_history(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[19] = PyTuple_Pack(3, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_kp_u_capital_deposit_hisrec, Py_True); if (unlikely(!__pyx_mstate_global->__pyx_tuple[19])) __PYX_ERR(0, 3052, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[19]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[19]);

  /* "unicorn_binance_rest_api/manager.py":3108
 * 
 *         """
 *         return self._request_margin_api('get', 'capital/withdraw/history', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_withdraw_history_id(self, withdraw_id, **params):
*/
  __pyx_mstate_global->__pyx_tuple[20] = PyTuple_Pack(3, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_kp_u_capital_withdraw_history, Py_True); if (unlikely(!__pyx_mstate_global->__pyx_tuple[20])) __PYX_ERR(0, 3108, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[20]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[20]);

  /* "unicorn_binance_rest_api/manager.py":3182
 * 
 *         """
 *         return self._request_margin_api('get', 'capital/deposit/address', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     # User Stream Endpoints
*/
  __pyx_mstate_global->__pyx_tuple[21] = PyTuple_Pack(3, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_kp_u_capital_deposit_address, Py_True); if (unlikely(!__pyx_mstate_global->__pyx_tuple[21])) __PYX_ERR(0, 3182, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[21]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[21]);

  /* "unicorn_binance_rest_api/manager.py":3211
 * 
 *         """
 *         res = self._post('userDataStream', False, data={}, version=self.PRIVATE_API_VERSION,             # <<<<<<<<<<<<<<
 *                          throw_exception=throw_exception, **kwargs)
 *         if output == "value":
*/
  __pyx_mstate_global->__pyx_tuple[22] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_userDataStream, Py_False); if (unlikely(!__pyx_mstate_global->__pyx_tuple[22])) __PYX_ERR(0, 3211, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[22]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[22]);

  /* "unicorn_binance_rest_api/manager.py":3328
 * 
 *         """
 *         return self._request_margin_api('get', 'margin/account', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_isolated_margin_account(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[23] = PyTuple_Pack(3, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_kp_u_margin_account, Py_True); if (unlikely(!__pyx_mstate_global->__pyx_tuple[23])) __PYX_ERR(0, 3328, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[23]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[23]);

  /* "unicorn_binance_rest_api/manager.py":3441
 * 
 *         """
 *         return self._request_margin_api('get', 'margin/isolated/account', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_margin_asset(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[24] = PyTuple_Pack(3, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_kp_u_margin_isolated_account, Py_True); if (unlikely(!__pyx_mstate_global->__pyx_tuple[24])) __PYX_ERR(0, 3441, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[24]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[24]);

  /* "unicorn_binance_rest_api/manager.py":3472
 * 
 *         """
 *         return self._request_margin_api('get', 'margin/asset', data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_margin_symbol(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[25] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_kp_u_margin_asset); if (unlikely(!__pyx_mstate_global->__pyx_tuple[25])) __PYX_ERR(0, 3472, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[25]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[25]);

  /* "unicorn_binance_rest_api/manager.py":3504
 * 
 *         """
 *         return self._request_margin_api('get', 'margin/pair', data=params)             # <<<<<<<<<<<<<<
 * 
 *     def create_isolated_margin_account(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[26] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_kp_u_margin_pair); if (unlikely(!__pyx_mstate_global->__pyx_tuple[26])) __PYX_ERR(0, 3504, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[26]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[26]);

  /* "unicorn_binance_rest_api/manager.py":3533
 * 
 *         """
 *         return self._request_margin_api('post', 'margin/isolated/create', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_isolated_margin_symbol(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[27] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_post, __pyx_mstate_global->__pyx_kp_u_margin_isolated_create); if (unlikely(!__pyx_mstate_global->__pyx_tuple[27])) __PYX_ERR(0, 3533, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[27]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[27]);

  /* "unicorn_binance_rest_api/manager.py":3564
 * 
 *         """
 *         return self._request_margin_api('get', 'margin/isolated/pair', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_all_isolated_margin_symbols(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[28] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_kp_u_margin_isolated_pair); if (unlikely(!__pyx_mstate_global->__pyx_tuple[28])) __PYX_ERR(0, 3564, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[28]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[28]);

  /* "unicorn_binance_rest_api/manager.py":3602
 * 
 *         """
 *         return self._request_margin_api('get', 'margin/isolated/allPairs', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def toggle_bnb_burn_spot_margin(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[29] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_kp_u_margin_isolated_allPairs); if (unlikely(!__pyx_mstate_global->__pyx_tuple[29])) __PYX_ERR(0, 3602, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[29]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[29]);

  /* "unicorn_binance_rest_api/manager.py":3631
 * 
 *         """
 *         return self._request_margin_api('post', 'bnbBurn', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_bnb_burn_spot_margin(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[30] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_post, __pyx_mstate_global->__pyx_n_u_bnbBurn); if (unlikely(!__pyx_mstate_global->__pyx_tuple[30])) __PYX_ERR(0, 3631, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[30]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[30]);

  /* "unicorn_binance_rest_api/manager.py":3655
 * 
 *         """
 *         return self._request_margin_api('get', 'bnbBurn', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_margin_price_index(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[31] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_n_u_bnbBurn); if (unlikely(!__pyx_mstate_global->__pyx_tuple[31])) __PYX_ERR(0, 3655, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[31]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[31]);

  /* "unicorn_binance_rest_api/manager.py":3682
 * 
 *         """
 *         return self._request_margin_api('get', 'margin/priceIndex', data=params)             # <<<<<<<<<<<<<<
 * 
 *     def transfer_margin_to_spot(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[32] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_kp_u_margin_priceIndex); if (unlikely(!__pyx_mstate_global->__pyx_tuple[32])) __PYX_ERR(0, 3682, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[32]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[32]);

  /* "unicorn_binance_rest_api/manager.py":3713
 *         """
 *         params['type'] = 2
 *         return self._request_margin_api('post', 'margin/transfer', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def transfer_spot_to_margin(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[33] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_post, __pyx_mstate_global->__pyx_kp_u_margin_transfer); if (unlikely(!__pyx_mstate_global->__pyx_tuple[33])) __PYX_ERR(0, 3713, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[33]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[33]);

  /* "unicorn_binance_rest_api/manager.py":3779
 *         params['transFrom'] = "ISOLATED_MARGIN"
 *         params['transTo'] = "SPOT"
 *         return self._request_margin_api('post', 'margin/isolated/transfer', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def transfer_spot_to_isolated_margin(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[34] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_post, __pyx_mstate_global->__pyx_kp_u_margin_isolated_transfer); if (unlikely(!__pyx_mstate_global->__pyx_tuple[34])) __PYX_ERR(0, 3779, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[34]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[34]);

  /* "unicorn_binance_rest_api/manager.py":3851
 * 
 *         """
 *         return self._request_margin_api('post', 'margin/loan', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def repay_margin_loan(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[35] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_post, __pyx_mstate_global->__pyx_kp_u_margin_loan); if (unlikely(!__pyx_mstate_global->__pyx_tuple[35])) __PYX_ERR(0, 3851, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[35]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[35]);

  /* "unicorn_binance_rest_api/manager.py":3890
 * 
 *         """
 *         return self._request_margin_api('post', 'margin/repay', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     # Margin OCO
*/
  __pyx_mstate_global->__pyx_tuple[36] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_post, __pyx_mstate_global->__pyx_kp_u_margin_repay); if (unlikely(!__pyx_mstate_global->__pyx_tuple[36])) __PYX_ERR(0, 3890, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[36]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[36]);

  /* "unicorn_binance_rest_api/manager.py":4000
 * 
 *         """
 *         return self._request_margin_api('post', 'margin/order/oco', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def cancel_margin_oco_order(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[37] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_post, __pyx_mstate_global->__pyx_kp_u_margin_order_oco); if (unlikely(!__pyx_mstate_global->__pyx_tuple[37])) __PYX_ERR(0, 4000, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[37]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[37]);

  /* "unicorn_binance_rest_api/manager.py":4081
 * 
 *     """
 *         return self._request_margin_api('delete', 'margin/orderList', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_margin_oco_order(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[38] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_delete, __pyx_mstate_global->__pyx_kp_u_margin_orderList); if (unlikely(!__pyx_mstate_global->__pyx_tuple[38])) __PYX_ERR(0, 4081, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[38]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[38]);

  /* "unicorn_binance_rest_api/manager.py":4127
 * 
 *         """
 *         return self._request_margin_api('get', 'margin/orderList', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_open_margin_oco_orders(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[39] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_kp_u_margin_orderList); if (unlikely(!__pyx_mstate_global->__pyx_tuple[39])) __PYX_ERR(0, 4127, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[39]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[39]);

  /* "unicorn_binance_rest_api/manager.py":4200
 * 
 *         """
 *         return self._request_margin_api('get', 'margin/allOrderList', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def create_margin_order(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[40] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_kp_u_margin_allOrderList); if (unlikely(!__pyx_mstate_global->__pyx_tuple[40])) __PYX_ERR(0, 4200, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[40]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[40]);

  /* "unicorn_binance_rest_api/manager.py":4321
 * 
 *         """
 *         return self._request_margin_api('post', 'margin/order', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def cancel_margin_order(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[41] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_post, __pyx_mstate_global->__pyx_kp_u_margin_order); if (unlikely(!__pyx_mstate_global->__pyx_tuple[41])) __PYX_ERR(0, 4321, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[41]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[41]);

  /* "unicorn_binance_rest_api/manager.py":4368
 *         """
 * 
 *         return self._request_margin_api('delete', 'margin/order', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_margin_loan_details(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[42] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_delete, __pyx_mstate_global->__pyx_kp_u_margin_order); if (unlikely(!__pyx_mstate_global->__pyx_tuple[42])) __PYX_ERR(0, 4368, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[42]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[42]);

  /* "unicorn_binance_rest_api/manager.py":4416
 * 
 *         """
 *         return self._request_margin_api('get', 'margin/loan', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_margin_repay_details(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[43] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_kp_u_margin_loan); if (unlikely(!__pyx_mstate_global->__pyx_tuple[43])) __PYX_ERR(0, 4416, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[43]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[43]);

  /* "unicorn_binance_rest_api/manager.py":4470
 * 
 *         """
 *         return self._request_margin_api('get', 'margin/repay', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_margin_order(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[44] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_kp_u_margin_repay); if (unlikely(!__pyx_mstate_global->__pyx_tuple[44])) __PYX_ERR(0, 4470, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[44]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[44]);

  /* "unicorn_binance_rest_api/manager.py":4518
 * 
 *         """
 *         return self._request_margin_api('get', 'margin/order', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_open_margin_orders(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[45] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_kp_u_margin_order); if (unlikely(!__pyx_mstate_global->__pyx_tuple[45])) __PYX_ERR(0, 4518, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[45]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[45]);

  /* "unicorn_binance_rest_api/manager.py":4568
 *         """
 * 
 *         return self._request_margin_api('get', 'margin/openOrders', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_open_isolated_margin_orders(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[46] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_kp_u_margin_openOrders); if (unlikely(!__pyx_mstate_global->__pyx_tuple[46])) __PYX_ERR(0, 4568, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[46]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[46]);

  /* "unicorn_binance_rest_api/manager.py":4679
 * 
 *         """
 *         return self._request_margin_api('get', 'margin/allOrders', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_margin_trades(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[47] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_kp_u_margin_allOrders); if (unlikely(!__pyx_mstate_global->__pyx_tuple[47])) __PYX_ERR(0, 4679, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[47]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[47]);

  /* "unicorn_binance_rest_api/manager.py":4739
 * 
 *         """
 *         return self._request_margin_api('get', 'margin/myTrades', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_max_margin_loan(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[48] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_kp_u_margin_myTrades); if (unlikely(!__pyx_mstate_global->__pyx_tuple[48])) __PYX_ERR(0, 4739, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[48]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[48]);

  /* "unicorn_binance_rest_api/manager.py":4764
 * 
 *         """
 *         return self._request_margin_api('get', 'margin/maxBorrowable', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_max_margin_transfer(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[49] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_kp_u_margin_maxBorrowable); if (unlikely(!__pyx_mstate_global->__pyx_tuple[49])) __PYX_ERR(0, 4764, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[49]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[49]);

  /* "unicorn_binance_rest_api/manager.py":4790
 *         """
 * 
 *         return self._request_margin_api('get', 'margin/maxTransferable', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     # Cross-margin
*/
  __pyx_mstate_global->__pyx_tuple[50] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_kp_u_margin_maxTransferable); if (unlikely(!__pyx_mstate_global->__pyx_tuple[50])) __PYX_ERR(0, 4790, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[50]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[50]);

  /* "unicorn_binance_rest_api/manager.py":4819
 * 
 *         """
 *         res = self._request_margin_api('post', 'userDataStream', signed=False, data={},             # <<<<<<<<<<<<<<
 *                                        throw_exception=throw_exception, **kwargs)
 *         if output == "value":
*/
  __pyx_mstate_global->__pyx_tuple[51] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_post, __pyx_mstate_global->__pyx_n_u_userDataStream); if (unlikely(!__pyx_mstate_global->__pyx_tuple[51])) __PYX_ERR(0, 4819, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[51]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[51]);

  /* "unicorn_binance_rest_api/manager.py":4850
 *             'listenKey': listenKey
 *         }
 *         return self._request_margin_api('put', 'userDataStream', signed=False, data=params,             # <<<<<<<<<<<<<<
 *                                         throw_exception=throw_exception, **kwargs)
 * 
*/
  __pyx_mstate_global->__pyx_tuple[52] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_put, __pyx_mstate_global->__pyx_n_u_userDataStream); if (unlikely(!__pyx_mstate_global->__pyx_tuple[52])) __PYX_ERR(0, 4850, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[52]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[52]);

  /* "unicorn_binance_rest_api/manager.py":4875
 *             'listenKey': listenKey
 *         }
 *         return self._request_margin_api('delete', 'userDataStream', signed=False, data=params,             # <<<<<<<<<<<<<<
 *                                         throw_exception=throw_exception, **kwargs)
 * 
*/
  __pyx_mstate_global->__pyx_tuple[53] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_delete, __pyx_mstate_global->__pyx_n_u_userDataStream); if (unlikely(!__pyx_mstate_global->__pyx_tuple[53])) __PYX_ERR(0, 4875, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[53]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[53]);

  /* "unicorn_binance_rest_api/manager.py":4911
 *             'symbol': symbol
 *         }
 *         res = self._request_margin_api('post', 'userDataStream/isolated', signed=False, data=params,             # <<<<<<<<<<<<<<
 *                                        throw_exception=throw_exception, **kwargs)
 *         if output == "value":
*/
  __pyx_mstate_global->__pyx_tuple[54] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_post, __pyx_mstate_global->__pyx_kp_u_userDataStream_isolated); if (unlikely(!__pyx_mstate_global->__pyx_tuple[54])) __PYX_ERR(0, 4911, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[54]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[54]);

  /* "unicorn_binance_rest_api/manager.py":4945
 *             'listenKey': listenKey
 *         }
 *         return self._request_margin_api('put', 'userDataStream/isolated', signed=False, data=params,             # <<<<<<<<<<<<<<
 *                                         throw_exception=throw_exception, **kwargs)
 * 
*/
  __pyx_mstate_global->__pyx_tuple[55] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_put, __pyx_mstate_global->__pyx_kp_u_userDataStream_isolated); if (unlikely(!__pyx_mstate_global->__pyx_tuple[55])) __PYX_ERR(0, 4945, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[55]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[55]);

  /* "unicorn_binance_rest_api/manager.py":4973
 *             'listenKey': listenKey
 *         }
 *         return self._request_margin_api('delete', 'userDataStream/isolated', signed=False, data=params,             # <<<<<<<<<<<<<<
 *                                         throw_exception=throw_exception, **kwargs)
 * 
*/
  __pyx_mstate_global->__pyx_tuple[56] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_delete, __pyx_mstate_global->__pyx_kp_u_userDataStream_isolated); if (unlikely(!__pyx_mstate_global->__pyx_tuple[56])) __PYX_ERR(0, 4973, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[56]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[56]);

  /* "unicorn_binance_rest_api/manager.py":4984
 * 
 *         """
 *         return self._request_margin_api('get', 'lending/daily/product/list', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_lending_daily_quota_left(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[57] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_kp_u_lending_daily_product_list); if (unlikely(!__pyx_mstate_global->__pyx_tuple[57])) __PYX_ERR(0, 4984, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[57]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[57]);

  /* "unicorn_binance_rest_api/manager.py":4992
 * 
 *         """
 *         return self._request_margin_api('get', 'lending/daily/userLeftQuota', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def purchase_lending_product(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[58] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_kp_u_lending_daily_userLeftQuota); if (unlikely(!__pyx_mstate_global->__pyx_tuple[58])) __PYX_ERR(0, 4992, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[58]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[58]);

  /* "unicorn_binance_rest_api/manager.py":5000
 * 
 *         """
 *         return self._request_margin_api('post', 'lending/daily/purchase', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_lending_daily_redemption_quota(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[59] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_post, __pyx_mstate_global->__pyx_kp_u_lending_daily_purchase); if (unlikely(!__pyx_mstate_global->__pyx_tuple[59])) __PYX_ERR(0, 5000, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[59]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[59]);

  /* "unicorn_binance_rest_api/manager.py":5008
 * 
 *         """
 *         return self._request_margin_api('get', 'lending/daily/userRedemptionQuota', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def redeem_lending_product(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[60] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_kp_u_lending_daily_userRedemptionQuot); if (unlikely(!__pyx_mstate_global->__pyx_tuple[60])) __PYX_ERR(0, 5008, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[60]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[60]);

  /* "unicorn_binance_rest_api/manager.py":5016
 * 
 *         """
 *         return self._request_margin_api('post', 'lending/daily/redeem', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_lending_position(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[61] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_post, __pyx_mstate_global->__pyx_kp_u_lending_daily_redeem); if (unlikely(!__pyx_mstate_global->__pyx_tuple[61])) __PYX_ERR(0, 5016, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[61]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[61]);

  /* "unicorn_binance_rest_api/manager.py":5024
 * 
 *         """
 *         return self._request_margin_api('get', 'lending/daily/token/position', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_fixed_activity_project_list(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[62] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_kp_u_lending_daily_token_position); if (unlikely(!__pyx_mstate_global->__pyx_tuple[62])) __PYX_ERR(0, 5024, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[62]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[62]);

  /* "unicorn_binance_rest_api/manager.py":5074
 * 
 *         """
 *         return self._request_margin_api('get', 'lending/project/list', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_lending_account(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[63] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_kp_u_lending_project_list); if (unlikely(!__pyx_mstate_global->__pyx_tuple[63])) __PYX_ERR(0, 5074, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[63]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[63]);

  /* "unicorn_binance_rest_api/manager.py":5082
 * 
 *         """
 *         return self._request_margin_api('get', 'lending/union/account', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_lending_purchase_history(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[64] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_kp_u_lending_union_account); if (unlikely(!__pyx_mstate_global->__pyx_tuple[64])) __PYX_ERR(0, 5082, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[64]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[64]);

  /* "unicorn_binance_rest_api/manager.py":5090
 * 
 *         """
 *         return self._request_margin_api('get', 'lending/union/purchaseRecord', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_lending_redemption_history(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[65] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_kp_u_lending_union_purchaseRecord); if (unlikely(!__pyx_mstate_global->__pyx_tuple[65])) __PYX_ERR(0, 5090, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[65]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[65]);

  /* "unicorn_binance_rest_api/manager.py":5098
 * 
 *         """
 *         return self._request_margin_api('get', 'lending/union/redemptionRecord', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_lending_interest_history(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[66] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_kp_u_lending_union_redemptionRecord); if (unlikely(!__pyx_mstate_global->__pyx_tuple[66])) __PYX_ERR(0, 5098, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[66]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[66]);

  /* "unicorn_binance_rest_api/manager.py":5106
 * 
 *         """
 *         return self._request_margin_api('get', 'lending/union/interestHistory', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def change_fixed_activity_to_daily_position(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[67] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_kp_u_lending_union_interestHistory); if (unlikely(!__pyx_mstate_global->__pyx_tuple[67])) __PYX_ERR(0, 5106, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[67]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[67]);

  /* "unicorn_binance_rest_api/manager.py":5114
 * 
 *         """
 *         return self._request_margin_api('post', 'lending/positionChanged', signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     # Sub Accounts
*/
  __pyx_mstate_global->__pyx_tuple[68] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_post, __pyx_mstate_global->__pyx_kp_u_lending_positionChanged); if (unlikely(!__pyx_mstate_global->__pyx_tuple[68])) __PYX_ERR(0, 5114, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[68]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[68]);

  /* "unicorn_binance_rest_api/manager.py":5155
 * 
 *         """
 *         return self._request_margin_api('get', 'sub-account/list', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_sub_account_transfer_history(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[69] = PyTuple_Pack(3, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_kp_u_sub_account_list, Py_True); if (unlikely(!__pyx_mstate_global->__pyx_tuple[69])) __PYX_ERR(0, 5155, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[69]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[69]);

  /* "unicorn_binance_rest_api/manager.py":5205
 * 
 *         """
 *         return self._request_margin_api('get', 'sub-account/sub/transfer/history', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_sub_account_futures_transfer_history(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[70] = PyTuple_Pack(3, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_kp_u_sub_account_sub_transfer_history, Py_True); if (unlikely(!__pyx_mstate_global->__pyx_tuple[70])) __PYX_ERR(0, 5205, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[70]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[70]);

  /* "unicorn_binance_rest_api/manager.py":5255
 * 
 *         """
 *         return self._request_margin_api('get', 'sub-account/futures/internalTransfer', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def create_sub_account_futures_transfer(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[71] = PyTuple_Pack(3, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_kp_u_sub_account_futures_internalTran, Py_True); if (unlikely(!__pyx_mstate_global->__pyx_tuple[71])) __PYX_ERR(0, 5255, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[71]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[71]);

  /* "unicorn_binance_rest_api/manager.py":5287
 * 
 *         """
 *         return self._request_margin_api('post', 'sub-account/futures/internalTransfer', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_sub_account_assets(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[72] = PyTuple_Pack(3, __pyx_mstate_global->__pyx_n_u_post, __pyx_mstate_global->__pyx_kp_u_sub_account_futures_internalTran, Py_True); if (unlikely(!__pyx_mstate_global->__pyx_tuple[72])) __PYX_ERR(0, 5287, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[72]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[72]);

  /* "unicorn_binance_rest_api/manager.py":5336
 * 
 *         """
 *         return self._request_margin_api('get', 'sub-account/assets', True, data=params, version='v3')             # <<<<<<<<<<<<<<
 * 
 *     def query_subaccount_spot_summary(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[73] = PyTuple_Pack(3, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_kp_u_sub_account_assets, Py_True); if (unlikely(!__pyx_mstate_global->__pyx_tuple[73])) __PYX_ERR(0, 5336, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[73]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[73]);

  /* "unicorn_binance_rest_api/manager.py":5374
 * 
 *         """
 *         return self._request_margin_api('get', 'sub-account/spotSummary', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_subaccount_deposit_address(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[74] = PyTuple_Pack(3, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_kp_u_sub_account_spotSummary, Py_True); if (unlikely(!__pyx_mstate_global->__pyx_tuple[74])) __PYX_ERR(0, 5374, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[74]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[74]);

  /* "unicorn_binance_rest_api/manager.py":5404
 * 
 *         """
 *         return self._request_margin_api('get', 'capital/deposit/subAddress', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_subaccount_deposit_history(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[75] = PyTuple_Pack(3, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_kp_u_capital_deposit_subAddress, Py_True); if (unlikely(!__pyx_mstate_global->__pyx_tuple[75])) __PYX_ERR(0, 5404, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[75]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[75]);

  /* "unicorn_binance_rest_api/manager.py":5462
 * 
 *         """
 *         return self._request_margin_api('get', 'capital/deposit/subHisrec', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_subaccount_futures_margin_status(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[76] = PyTuple_Pack(3, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_kp_u_capital_deposit_subHisrec, Py_True); if (unlikely(!__pyx_mstate_global->__pyx_tuple[76])) __PYX_ERR(0, 5462, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[76]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[76]);

  /* "unicorn_binance_rest_api/manager.py":5493
 * 
 *         """
 *         return self._request_margin_api('get', 'sub-account/status', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def enable_subaccount_margin(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[77] = PyTuple_Pack(3, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_kp_u_sub_account_status, Py_True); if (unlikely(!__pyx_mstate_global->__pyx_tuple[77])) __PYX_ERR(0, 5493, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[77]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[77]);

  /* "unicorn_binance_rest_api/manager.py":5520
 * 
 *         """
 *         return self._request_margin_api('post', 'sub-account/margin/enable', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_subaccount_margin_details(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[78] = PyTuple_Pack(3, __pyx_mstate_global->__pyx_n_u_post, __pyx_mstate_global->__pyx_kp_u_sub_account_margin_enable, Py_True); if (unlikely(!__pyx_mstate_global->__pyx_tuple[78])) __PYX_ERR(0, 5520, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[78]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[78]);

  /* "unicorn_binance_rest_api/manager.py":5587
 * 
 *         """
 *         return self._request_margin_api('get', 'sub-account/margin/account', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_subaccount_margin_summary(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[79] = PyTuple_Pack(3, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_kp_u_sub_account_margin_account, Py_True); if (unlikely(!__pyx_mstate_global->__pyx_tuple[79])) __PYX_ERR(0, 5587, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[79]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[79]);

  /* "unicorn_binance_rest_api/manager.py":5624
 * 
 *         """
 *         return self._request_margin_api('get', 'sub-account/margin/accountSummary', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def enable_subaccount_futures(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[80] = PyTuple_Pack(3, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_kp_u_sub_account_margin_accountSummar, Py_True); if (unlikely(!__pyx_mstate_global->__pyx_tuple[80])) __PYX_ERR(0, 5624, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[80]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[80]);

  /* "unicorn_binance_rest_api/manager.py":5651
 * 
 *         """
 *         return self._request_margin_api('post', 'sub-account/futures/enable', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_subaccount_futures_details(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[81] = PyTuple_Pack(3, __pyx_mstate_global->__pyx_n_u_post, __pyx_mstate_global->__pyx_kp_u_sub_account_futures_enable, Py_True); if (unlikely(!__pyx_mstate_global->__pyx_tuple[81])) __PYX_ERR(0, 5651, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[81]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[81]);

  /* "unicorn_binance_rest_api/manager.py":5701
 * 
 *         """
 *         return self._request_margin_api('get', 'sub-account/futures/account', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_subaccount_futures_summary(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[82] = PyTuple_Pack(3, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_kp_u_sub_account_futures_account, Py_True); if (unlikely(!__pyx_mstate_global->__pyx_tuple[82])) __PYX_ERR(0, 5701, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[82]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[82]);

  /* "unicorn_binance_rest_api/manager.py":5753
 * 
 *         """
 *         return self._request_margin_api('get', 'sub-account/futures/accountSummary', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_subaccount_futures_positionrisk(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[83] = PyTuple_Pack(3, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_kp_u_sub_account_futures_accountSumma, Py_True); if (unlikely(!__pyx_mstate_global->__pyx_tuple[83])) __PYX_ERR(0, 5753, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[83]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[83]);

  /* "unicorn_binance_rest_api/manager.py":5785
 * 
 *         """
 *         return self._request_margin_api('get', 'sub-account/futures/positionRisk', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def make_subaccount_futures_transfer(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[84] = PyTuple_Pack(3, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_kp_u_sub_account_futures_positionRisk, Py_True); if (unlikely(!__pyx_mstate_global->__pyx_tuple[84])) __PYX_ERR(0, 5785, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[84]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[84]);

  /* "unicorn_binance_rest_api/manager.py":5815
 * 
 *         """
 *         return self._request_margin_api('post', 'sub-account/futures/transfer', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def make_subaccount_margin_transfer(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[85] = PyTuple_Pack(3, __pyx_mstate_global->__pyx_n_u_post, __pyx_mstate_global->__pyx_kp_u_sub_account_futures_transfer, Py_True); if (unlikely(!__pyx_mstate_global->__pyx_tuple[85])) __PYX_ERR(0, 5815, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[85]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[85]);

  /* "unicorn_binance_rest_api/manager.py":5843
 * 
 *         """
 *         return self._request_margin_api('post', 'sub-account/margin/transfer', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def make_subaccount_to_subaccount_transfer(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[86] = PyTuple_Pack(3, __pyx_mstate_global->__pyx_n_u_post, __pyx_mstate_global->__pyx_kp_u_sub_account_margin_transfer, Py_True); if (unlikely(!__pyx_mstate_global->__pyx_tuple[86])) __PYX_ERR(0, 5843, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[86]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[86]);

  /* "unicorn_binance_rest_api/manager.py":5870
 * 
 *         """
 *         return self._request_margin_api('post', 'sub-account/transfer/subToSub', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def make_subaccount_to_master_transfer(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[87] = PyTuple_Pack(3, __pyx_mstate_global->__pyx_n_u_post, __pyx_mstate_global->__pyx_kp_u_sub_account_transfer_subToSub, Py_True); if (unlikely(!__pyx_mstate_global->__pyx_tuple[87])) __PYX_ERR(0, 5870, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[87]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[87]);

  /* "unicorn_binance_rest_api/manager.py":5895
 * 
 *         """
 *         return self._request_margin_api('post', 'sub-account/transfer/subToMaster', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_subaccount_transfer_history(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[88] = PyTuple_Pack(3, __pyx_mstate_global->__pyx_n_u_post, __pyx_mstate_global->__pyx_kp_u_sub_account_transfer_subToMaster, Py_True); if (unlikely(!__pyx_mstate_global->__pyx_tuple[88])) __PYX_ERR(0, 5895, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[88]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[88]);

  /* "unicorn_binance_rest_api/manager.py":5945
 * 
 *         """
 *         return self._request_margin_api('get', 'sub-account/transfer/subUserHistory', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def make_universal_transfer(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[89] = PyTuple_Pack(3, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_kp_u_sub_account_transfer_subUserHist, Py_True); if (unlikely(!__pyx_mstate_global->__pyx_tuple[89])) __PYX_ERR(0, 5945, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[89]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[89]);

  /* "unicorn_binance_rest_api/manager.py":5978
 * 
 *         """
 *         return self._request_margin_api('post', 'sub-account/universalTransfer', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_universal_transfer_history(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[90] = PyTuple_Pack(3, __pyx_mstate_global->__pyx_n_u_post, __pyx_mstate_global->__pyx_kp_u_sub_account_universalTransfer, Py_True); if (unlikely(!__pyx_mstate_global->__pyx_tuple[90])) __PYX_ERR(0, 5978, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[90]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[90]);

  /* "unicorn_binance_rest_api/manager.py":6032
 * 
 *         """
 *         return self._request_margin_api('get', 'sub-account/universalTransfer', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_used_weight(self, cached: bool = False, cached_timeout: Optional[float] = None) -> Optional[dict]:
*/
  __pyx_mstate_global->__pyx_tuple[91] = PyTuple_Pack(3, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_kp_u_sub_account_universalTransfer, Py_True); if (unlikely(!__pyx_mstate_global->__pyx_tuple[91])) __PYX_ERR(0, 6032, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[91]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[91]);

  /* "unicorn_binance_rest_api/manager.py":6073
 * 
 *         """
 *         return self._request_futures_api('get', 'ping')             # <<<<<<<<<<<<<<
 * 
 *     def futures_time(self):
*/
  __pyx_mstate_global->__pyx_tuple[92] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_n_u_ping); if (unlikely(!__pyx_mstate_global->__pyx_tuple[92])) __PYX_ERR(0, 6073, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[92]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[92]);

  /* "unicorn_binance_rest_api/manager.py":6081
 * 
 *         """
 *         return self._request_futures_api('get', 'time')             # <<<<<<<<<<<<<<
 * 
 *     def futures_exchange_info(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[93] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_n_u_time); if (unlikely(!__pyx_mstate_global->__pyx_tuple[93])) __PYX_ERR(0, 6081, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[93]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[93]);

  /* "unicorn_binance_rest_api/manager.py":6089
 * 
 *         """
 *         return self._request_futures_api('get', 'exchangeInfo', data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_order_book(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[94] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_n_u_exchangeInfo); if (unlikely(!__pyx_mstate_global->__pyx_tuple[94])) __PYX_ERR(0, 6089, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[94]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[94]);

  /* "unicorn_binance_rest_api/manager.py":6097
 * 
 *         """
 *         return self._request_futures_api('get', 'depth', data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_recent_trades(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[95] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_n_u_depth); if (unlikely(!__pyx_mstate_global->__pyx_tuple[95])) __PYX_ERR(0, 6097, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[95]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[95]);

  /* "unicorn_binance_rest_api/manager.py":6105
 * 
 *         """
 *         return self._request_futures_api('get', 'trades', data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_historical_trades(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[96] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_n_u_trades); if (unlikely(!__pyx_mstate_global->__pyx_tuple[96])) __PYX_ERR(0, 6105, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[96]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[96]);

  /* "unicorn_binance_rest_api/manager.py":6113
 * 
 *         """
 *         return self._request_futures_api('get', 'historicalTrades', data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_aggregate_trades(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[97] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_n_u_historicalTrades); if (unlikely(!__pyx_mstate_global->__pyx_tuple[97])) __PYX_ERR(0, 6113, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[97]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[97]);

  /* "unicorn_binance_rest_api/manager.py":6122
 * 
 *         """
 *         return self._request_futures_api('get', 'aggTrades', data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_klines(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[98] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_n_u_aggTrades); if (unlikely(!__pyx_mstate_global->__pyx_tuple[98])) __PYX_ERR(0, 6122, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[98]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[98]);

  /* "unicorn_binance_rest_api/manager.py":6130
 * 
 *         """
 *         return self._request_futures_api('get', 'klines', data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_mark_price(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[99] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_n_u_klines); if (unlikely(!__pyx_mstate_global->__pyx_tuple[99])) __PYX_ERR(0, 6130, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[99]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[99]);

  /* "unicorn_binance_rest_api/manager.py":6138
 * 
 *         """
 *         return self._request_futures_api('get', 'premiumIndex', data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_funding_rate(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[100] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_n_u_premiumIndex); if (unlikely(!__pyx_mstate_global->__pyx_tuple[100])) __PYX_ERR(0, 6138, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[100]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[100]);

  /* "unicorn_binance_rest_api/manager.py":6146
 * 
 *         """
 *         return self._request_futures_api('get', 'fundingRate', data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_ticker(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[101] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_n_u_fundingRate); if (unlikely(!__pyx_mstate_global->__pyx_tuple[101])) __PYX_ERR(0, 6146, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[101]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[101]);

  /* "unicorn_binance_rest_api/manager.py":6154
 * 
 *         """
 *         return self._request_futures_api('get', 'ticker/24hr', data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_symbol_ticker(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[102] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_kp_u_ticker_24hr); if (unlikely(!__pyx_mstate_global->__pyx_tuple[102])) __PYX_ERR(0, 6154, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[102]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[102]);

  /* "unicorn_binance_rest_api/manager.py":6162
 * 
 *         """
 *         return self._request_futures_api('get', 'ticker/price', data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_orderbook_ticker(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[103] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_kp_u_ticker_price); if (unlikely(!__pyx_mstate_global->__pyx_tuple[103])) __PYX_ERR(0, 6162, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[103]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[103]);

  /* "unicorn_binance_rest_api/manager.py":6170
 * 
 *         """
 *         return self._request_futures_api('get', 'ticker/bookTicker', data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_liquidation_orders(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[104] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_kp_u_ticker_bookTicker); if (unlikely(!__pyx_mstate_global->__pyx_tuple[104])) __PYX_ERR(0, 6170, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[104]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[104]);

  /* "unicorn_binance_rest_api/manager.py":6178
 * 
 *         """
 *         return self._request_futures_api('get', 'ticker/allForceOrders', data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_open_interest(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[105] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_kp_u_ticker_allForceOrders); if (unlikely(!__pyx_mstate_global->__pyx_tuple[105])) __PYX_ERR(0, 6178, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[105]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[105]);

  /* "unicorn_binance_rest_api/manager.py":6186
 * 
 *         """
 *         return self._request_futures_api('get', 'ticker/openInterest', data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_open_interest_hist(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[106] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_kp_u_ticker_openInterest); if (unlikely(!__pyx_mstate_global->__pyx_tuple[106])) __PYX_ERR(0, 6186, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[106]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[106]);

  /* "unicorn_binance_rest_api/manager.py":6194
 * 
 *         """
 *         return self._request_futures_data_api('get', 'openInterestHist', data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_leverage_bracket(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[107] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_n_u_openInterestHist); if (unlikely(!__pyx_mstate_global->__pyx_tuple[107])) __PYX_ERR(0, 6194, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[107]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[107]);

  /* "unicorn_binance_rest_api/manager.py":6202
 * 
 *         """
 *         return self._request_futures_api('get', 'leverageBracket', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_account_transfer(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[108] = PyTuple_Pack(3, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_n_u_leverageBracket, Py_True); if (unlikely(!__pyx_mstate_global->__pyx_tuple[108])) __PYX_ERR(0, 6202, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[108]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[108]);

  /* "unicorn_binance_rest_api/manager.py":6210
 * 
 *         """
 *         return self._request_margin_api('post', 'futures/transfer', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_auto_cancel_all_open_orders(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[109] = PyTuple_Pack(3, __pyx_mstate_global->__pyx_n_u_post, __pyx_mstate_global->__pyx_kp_u_futures_transfer, Py_True); if (unlikely(!__pyx_mstate_global->__pyx_tuple[109])) __PYX_ERR(0, 6210, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[109]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[109]);

  /* "unicorn_binance_rest_api/manager.py":6236
 * 
 *         """
 *         return self._request_futures_api('post', 'countdownCancelAll', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_commission_rate(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[110] = PyTuple_Pack(3, __pyx_mstate_global->__pyx_n_u_post, __pyx_mstate_global->__pyx_n_u_countdownCancelAll, Py_True); if (unlikely(!__pyx_mstate_global->__pyx_tuple[110])) __PYX_ERR(0, 6236, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[110]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[110]);

  /* "unicorn_binance_rest_api/manager.py":6244
 * 
 *         """
 *         return self._request_futures_coin_api("get", "commissionRate", version=1, signed=True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def transfer_history(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[111] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_n_u_commissionRate); if (unlikely(!__pyx_mstate_global->__pyx_tuple[111])) __PYX_ERR(0, 6244, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[111]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[111]);

  /* "unicorn_binance_rest_api/manager.py":6252
 * 
 *         """
 *         return self._request_margin_api('get', 'futures/transfer', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_create_order(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[112] = PyTuple_Pack(3, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_kp_u_futures_transfer, Py_True); if (unlikely(!__pyx_mstate_global->__pyx_tuple[112])) __PYX_ERR(0, 6252, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[112]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[112]);

  /* "unicorn_binance_rest_api/manager.py":6260
 * 
 *         """
 *         return self._request_futures_api('post', 'order', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_place_batch_order(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[113] = PyTuple_Pack(3, __pyx_mstate_global->__pyx_n_u_post, __pyx_mstate_global->__pyx_n_u_order, Py_True); if (unlikely(!__pyx_mstate_global->__pyx_tuple[113])) __PYX_ERR(0, 6260, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[113]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[113]);

  /* "unicorn_binance_rest_api/manager.py":6269
 *         """
 *         query_string = urlencode(params)
 *         query_string = query_string.replace('%27', '%22')             # <<<<<<<<<<<<<<
 *         params['batchOrders'] = query_string[12:]
 *         return self._request_futures_api('post', 'batchOrders', True, data=params)
*/
  __pyx_mstate_global->__pyx_tuple[114] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_kp_u_27, __pyx_mstate_global->__pyx_kp_u_22); if (unlikely(!__pyx_mstate_global->__pyx_tuple[114])) __PYX_ERR(0, 6269, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[114]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[114]);

  /* "unicorn_binance_rest_api/manager.py":6270
 *         query_string = urlencode(params)
 *         query_string = query_string.replace('%27', '%22')
 *         params['batchOrders'] = query_string[12:]             # <<<<<<<<<<<<<<
 *         return self._request_futures_api('post', 'batchOrders', True, data=params)
 * 
*/
  __pyx_mstate_global->__pyx_slice[2] = PySlice_New(__pyx_mstate_global->__pyx_int_12, Py_None, Py_None); if (unlikely(!__pyx_mstate_global->__pyx_slice[2])) __PYX_ERR(0, 6270, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_slice[2]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_slice[2]);

  /* "unicorn_binance_rest_api/manager.py":6271
 *         query_string = query_string.replace('%27', '%22')
 *         params['batchOrders'] = query_string[12:]
 *         return self._request_futures_api('post', 'batchOrders', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_get_order(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[115] = PyTuple_Pack(3, __pyx_mstate_global->__pyx_n_u_post, __pyx_mstate_global->__pyx_n_u_batchOrders, Py_True); if (unlikely(!__pyx_mstate_global->__pyx_tuple[115])) __PYX_ERR(0, 6271, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[115]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[115]);

  /* "unicorn_binance_rest_api/manager.py":6280
 * 
 *         """
 *         return self._request_futures_api('get', 'order', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_get_open_orders(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[116] = PyTuple_Pack(3, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_n_u_order, Py_True); if (unlikely(!__pyx_mstate_global->__pyx_tuple[116])) __PYX_ERR(0, 6280, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[116]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[116]);

  /* "unicorn_binance_rest_api/manager.py":6289
 * 
 *         """
 *         return self._request_futures_api('get', 'openOrders', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_get_all_orders(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[117] = PyTuple_Pack(3, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_n_u_openOrders, Py_True); if (unlikely(!__pyx_mstate_global->__pyx_tuple[117])) __PYX_ERR(0, 6289, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[117]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[117]);

  /* "unicorn_binance_rest_api/manager.py":6298
 * 
 *         """
 *         return self._request_futures_api('get', 'allOrders', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_cancel_order(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[118] = PyTuple_Pack(3, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_n_u_allOrders, Py_True); if (unlikely(!__pyx_mstate_global->__pyx_tuple[118])) __PYX_ERR(0, 6298, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[118]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[118]);

  /* "unicorn_binance_rest_api/manager.py":6307
 * 
 *         """
 *         return self._request_futures_api('delete', 'order', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_cancel_all_open_orders(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[119] = PyTuple_Pack(3, __pyx_mstate_global->__pyx_n_u_delete, __pyx_mstate_global->__pyx_n_u_order, Py_True); if (unlikely(!__pyx_mstate_global->__pyx_tuple[119])) __PYX_ERR(0, 6307, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[119]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[119]);

  /* "unicorn_binance_rest_api/manager.py":6316
 * 
 *         """
 *         return self._request_futures_api('delete', 'allOpenOrders', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_cancel_orders(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[120] = PyTuple_Pack(3, __pyx_mstate_global->__pyx_n_u_delete, __pyx_mstate_global->__pyx_n_u_allOpenOrders, Py_True); if (unlikely(!__pyx_mstate_global->__pyx_tuple[120])) __PYX_ERR(0, 6316, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[120]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[120]);

  /* "unicorn_binance_rest_api/manager.py":6325
 * 
 *         """
 *         return self._request_futures_api('delete', 'batchOrders', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_account_balance(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[121] = PyTuple_Pack(3, __pyx_mstate_global->__pyx_n_u_delete, __pyx_mstate_global->__pyx_n_u_batchOrders, Py_True); if (unlikely(!__pyx_mstate_global->__pyx_tuple[121])) __PYX_ERR(0, 6325, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[121]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[121]);

  /* "unicorn_binance_rest_api/manager.py":6334
 * 
 *         """
 *         return self._request_futures_api('get', 'balance', True, version=2, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_account(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[122] = PyTuple_Pack(3, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_n_u_balance, Py_True); if (unlikely(!__pyx_mstate_global->__pyx_tuple[122])) __PYX_ERR(0, 6334, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[122]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[122]);

  /* "unicorn_binance_rest_api/manager.py":6343
 * 
 *         """
 *         return self._request_futures_api('get', 'account', True, version=2, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_change_leverage(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[123] = PyTuple_Pack(3, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_n_u_account, Py_True); if (unlikely(!__pyx_mstate_global->__pyx_tuple[123])) __PYX_ERR(0, 6343, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[123]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[123]);

  /* "unicorn_binance_rest_api/manager.py":6352
 * 
 *         """
 *         return self._request_futures_api('post', 'leverage', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_change_margin_type(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[124] = PyTuple_Pack(3, __pyx_mstate_global->__pyx_n_u_post, __pyx_mstate_global->__pyx_n_u_leverage, Py_True); if (unlikely(!__pyx_mstate_global->__pyx_tuple[124])) __PYX_ERR(0, 6352, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[124]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[124]);

  /* "unicorn_binance_rest_api/manager.py":6360
 * 
 *         """
 *         return self._request_futures_api('post', 'marginType', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_change_position_margin(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[125] = PyTuple_Pack(3, __pyx_mstate_global->__pyx_n_u_post, __pyx_mstate_global->__pyx_n_u_marginType, Py_True); if (unlikely(!__pyx_mstate_global->__pyx_tuple[125])) __PYX_ERR(0, 6360, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[125]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[125]);

  /* "unicorn_binance_rest_api/manager.py":6369
 * 
 *         """
 *         return self._request_futures_api('post', 'positionMargin', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_position_margin_history(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[126] = PyTuple_Pack(3, __pyx_mstate_global->__pyx_n_u_post, __pyx_mstate_global->__pyx_n_u_positionMargin, Py_True); if (unlikely(!__pyx_mstate_global->__pyx_tuple[126])) __PYX_ERR(0, 6369, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[126]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[126]);

  /* "unicorn_binance_rest_api/manager.py":6378
 * 
 *         """
 *         return self._request_futures_api('get', 'positionMargin/history', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_position_information(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[127] = PyTuple_Pack(3, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_kp_u_positionMargin_history, Py_True); if (unlikely(!__pyx_mstate_global->__pyx_tuple[127])) __PYX_ERR(0, 6378, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[127]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[127]);

  /* "unicorn_binance_rest_api/manager.py":6387
 * 
 *         """
 *         return self._request_futures_api('get', 'positionRisk', True, version=2, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_account_trades(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[128] = PyTuple_Pack(3, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_n_u_positionRisk, Py_True); if (unlikely(!__pyx_mstate_global->__pyx_tuple[128])) __PYX_ERR(0, 6387, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[128]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[128]);

  /* "unicorn_binance_rest_api/manager.py":6396
 * 
 *         """
 *         return self._request_futures_api('get', 'userTrades', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_income_history(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[129] = PyTuple_Pack(3, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_n_u_userTrades, Py_True); if (unlikely(!__pyx_mstate_global->__pyx_tuple[129])) __PYX_ERR(0, 6396, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[129]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[129]);

  /* "unicorn_binance_rest_api/manager.py":6405
 * 
 *         """
 *         return self._request_futures_api('get', 'income', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_change_position_mode(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[130] = PyTuple_Pack(3, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_n_u_income, Py_True); if (unlikely(!__pyx_mstate_global->__pyx_tuple[130])) __PYX_ERR(0, 6405, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[130]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[130]);

  /* "unicorn_binance_rest_api/manager.py":6414
 * 
 *         """
 *         return self._request_futures_api('post', 'positionSide/dual', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_get_position_mode(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[131] = PyTuple_Pack(3, __pyx_mstate_global->__pyx_n_u_post, __pyx_mstate_global->__pyx_kp_u_positionSide_dual, Py_True); if (unlikely(!__pyx_mstate_global->__pyx_tuple[131])) __PYX_ERR(0, 6414, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[131]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[131]);

  /* "unicorn_binance_rest_api/manager.py":6423
 * 
 *         """
 *         return self._request_futures_api('get', 'positionSide/dual', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_stream_get_listen_key(self, output="value", throw_exception=True, **kwargs):
*/
  __pyx_mstate_global->__pyx_tuple[132] = PyTuple_Pack(3, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_kp_u_positionSide_dual, Py_True); if (unlikely(!__pyx_mstate_global->__pyx_tuple[132])) __PYX_ERR(0, 6423, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[132]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[132]);

  /* "unicorn_binance_rest_api/manager.py":6450
 * 
 *         """
 *         res = self._request_futures_api('post', 'listenKey', signed=False, data={},             # <<<<<<<<<<<<<<
 *                                         throw_exception=throw_exception, **kwargs)
 *         if output == "value":
*/
  __pyx_mstate_global->__pyx_tuple[133] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_post, __pyx_mstate_global->__pyx_n_u_listenKey); if (unlikely(!__pyx_mstate_global->__pyx_tuple[133])) __PYX_ERR(0, 6450, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[133]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[133]);

  /* "unicorn_binance_rest_api/manager.py":6481
 *             'listenKey': listenKey
 *         }
 *         return self._request_futures_api('put', 'listenKey', signed=False, data=params,             # <<<<<<<<<<<<<<
 *                                          throw_exception=throw_exception, **kwargs)
 * 
*/
  __pyx_mstate_global->__pyx_tuple[134] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_put, __pyx_mstate_global->__pyx_n_u_listenKey); if (unlikely(!__pyx_mstate_global->__pyx_tuple[134])) __PYX_ERR(0, 6481, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[134]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[134]);

  /* "unicorn_binance_rest_api/manager.py":6506
 *             'listenKey': listenKey
 *         }
 *         return self._request_futures_api('delete', 'listenKey', signed=False, data=params,             # <<<<<<<<<<<<<<
 *                                          throw_exception=throw_exception, **kwargs)
 * 
*/
  __pyx_mstate_global->__pyx_tuple[135] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_delete, __pyx_mstate_global->__pyx_n_u_listenKey); if (unlikely(!__pyx_mstate_global->__pyx_tuple[135])) __PYX_ERR(0, 6506, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[135]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[135]);

  /* "unicorn_binance_rest_api/manager.py":6589
 * 
 *         """
 *         return self._request_futures_coin_api("get", "continuousKlines", data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_coin_index_price_klines(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[136] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_n_u_continuousKlines); if (unlikely(!__pyx_mstate_global->__pyx_tuple[136])) __PYX_ERR(0, 6589, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[136]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[136]);

  /* "unicorn_binance_rest_api/manager.py":6597
 * 
 *         """
 *         return self._request_futures_coin_api("get", "indexPriceKlines", data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_coin_mark_price_klines(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[137] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_n_u_indexPriceKlines); if (unlikely(!__pyx_mstate_global->__pyx_tuple[137])) __PYX_ERR(0, 6597, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[137]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[137]);

  /* "unicorn_binance_rest_api/manager.py":6605
 * 
 *         """
 *         return self._request_futures_coin_api("get", "markPriceKlines", data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_coin_mark_price(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[138] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_n_u_markPriceKlines); if (unlikely(!__pyx_mstate_global->__pyx_tuple[138])) __PYX_ERR(0, 6605, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[138]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[138]);

  /* "unicorn_binance_rest_api/manager.py":6658
 * 
 *         """
 *         return self._request_futures_coin_api("get", "allForceOrders", data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_coin_open_interest(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[139] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_n_u_allForceOrders); if (unlikely(!__pyx_mstate_global->__pyx_tuple[139])) __PYX_ERR(0, 6658, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[139]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[139]);

  /* "unicorn_binance_rest_api/manager.py":6667
 * 
 *         """
 *         return self._request_futures_coin_api("get", "openInterest", data=params)             # <<<<<<<<<<<<<<
 * 
 *     def futures_coin_open_interest_hist(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[140] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_n_u_openInterest); if (unlikely(!__pyx_mstate_global->__pyx_tuple[140])) __PYX_ERR(0, 6667, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[140]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[140]);

  /* "unicorn_binance_rest_api/manager.py":6685
 * 
 *         """
 *         return self._request_futures_coin_api(             # <<<<<<<<<<<<<<
 *             "get", "leverageBracket", version=2, signed=True, data=params
 *         )
*/
  __pyx_mstate_global->__pyx_tuple[141] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_n_u_leverageBracket); if (unlikely(!__pyx_mstate_global->__pyx_tuple[141])) __PYX_ERR(0, 6685, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[141]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[141]);

  /* "unicorn_binance_rest_api/manager.py":6696
 * 
 *         """
 *         return self._request_margin_api("get", "asset/transfer", True, data=params)             # <<<<<<<<<<<<<<
 *         # return self._request_margin_api("get", "futures/transfer", True, data=params)
 * 
*/
  __pyx_mstate_global->__pyx_tuple[142] = PyTuple_Pack(3, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_kp_u_asset_transfer, Py_True); if (unlikely(!__pyx_mstate_global->__pyx_tuple[142])) __PYX_ERR(0, 6696, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[142]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[142]);

  /* "unicorn_binance_rest_api/manager.py":6705
 *         https://binance-docs.github.io/apidocs/spot/en/#user-universal-transfer
 *         """
 *         return self._request_margin_api(             # <<<<<<<<<<<<<<
 *             "post", "asset/transfer", signed=True, data=params
 *         )
*/
  __pyx_mstate_global->__pyx_tuple[143] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_post, __pyx_mstate_global->__pyx_kp_u_asset_transfer); if (unlikely(!__pyx_mstate_global->__pyx_tuple[143])) __PYX_ERR(0, 6705, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[143]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[143]);

  /* "unicorn_binance_rest_api/manager.py":6754
 * 
 *         """
 *         return self._request_futures_coin_api(             # <<<<<<<<<<<<<<
 *             "get", "allOrders", signed=True, data=params
 *         )
*/
  __pyx_mstate_global->__pyx_tuple[144] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_n_u_allOrders); if (unlikely(!__pyx_mstate_global->__pyx_tuple[144])) __PYX_ERR(0, 6754, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[144]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[144]);

  /* "unicorn_binance_rest_api/manager.py":6765
 * 
 *         """
 *         return self._request_futures_coin_api(             # <<<<<<<<<<<<<<
 *             "delete", "order", signed=True, data=params
 *         )
*/
  __pyx_mstate_global->__pyx_tuple[145] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_delete, __pyx_mstate_global->__pyx_n_u_order); if (unlikely(!__pyx_mstate_global->__pyx_tuple[145])) __PYX_ERR(0, 6765, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[145]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[145]);

  /* "unicorn_binance_rest_api/manager.py":6776
 * 
 *         """
 *         return self._request_futures_coin_api(             # <<<<<<<<<<<<<<
 *             "delete", "allOpenOrders", signed=True, data=params
 *         )
*/
  __pyx_mstate_global->__pyx_tuple[146] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_delete, __pyx_mstate_global->__pyx_n_u_allOpenOrders); if (unlikely(!__pyx_mstate_global->__pyx_tuple[146])) __PYX_ERR(0, 6776, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[146]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[146]);

  /* "unicorn_binance_rest_api/manager.py":6798
 * 
 *         """
 *         return self._request_futures_coin_api(             # <<<<<<<<<<<<<<
 *             "get", "balance", signed=True, data=params
 *         )
*/
  __pyx_mstate_global->__pyx_tuple[147] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_n_u_balance); if (unlikely(!__pyx_mstate_global->__pyx_tuple[147])) __PYX_ERR(0, 6798, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[147]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[147]);

  /* "unicorn_binance_rest_api/manager.py":6809
 * 
 *         """
 *         return self._request_futures_coin_api(             # <<<<<<<<<<<<<<
 *             "get", "account", signed=True, data=params
 *         )
*/
  __pyx_mstate_global->__pyx_tuple[148] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_n_u_account); if (unlikely(!__pyx_mstate_global->__pyx_tuple[148])) __PYX_ERR(0, 6809, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[148]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[148]);

  /* "unicorn_binance_rest_api/manager.py":6820
 * 
 *         """
 *         return self._request_futures_coin_api(             # <<<<<<<<<<<<<<
 *             "post", "leverage", signed=True, data=params
 *         )
*/
  __pyx_mstate_global->__pyx_tuple[149] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_post, __pyx_mstate_global->__pyx_n_u_leverage); if (unlikely(!__pyx_mstate_global->__pyx_tuple[149])) __PYX_ERR(0, 6820, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[149]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[149]);

  /* "unicorn_binance_rest_api/manager.py":6831
 * 
 *         """
 *         return self._request_futures_coin_api(             # <<<<<<<<<<<<<<
 *             "post", "marginType", signed=True, data=params
 *         )
*/
  __pyx_mstate_global->__pyx_tuple[150] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_post, __pyx_mstate_global->__pyx_n_u_marginType); if (unlikely(!__pyx_mstate_global->__pyx_tuple[150])) __PYX_ERR(0, 6831, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[150]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[150]);

  /* "unicorn_binance_rest_api/manager.py":7057
 * 
 *         """
 *         return self._request_margin_api('get', 'capital/config/getall', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def get_account_snapshot(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[151] = PyTuple_Pack(3, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_kp_u_capital_config_getall, Py_True); if (unlikely(!__pyx_mstate_global->__pyx_tuple[151])) __PYX_ERR(0, 7057, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[151]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[151]);

  /* "unicorn_binance_rest_api/manager.py":7173
 * 
 *         """
 *         return self._request_margin_api('get', 'accountSnapshot', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def disable_fast_withdraw_switch(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[152] = PyTuple_Pack(3, __pyx_mstate_global->__pyx_n_u_get, __pyx_mstate_global->__pyx_n_u_accountSnapshot, Py_True); if (unlikely(!__pyx_mstate_global->__pyx_tuple[152])) __PYX_ERR(0, 7173, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[152]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[152]);

  /* "unicorn_binance_rest_api/manager.py":7189
 * 
 *         """
 *         return self._request_margin_api('post', 'disableFastWithdrawSwitch', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def enable_fast_withdraw_switch(self, **params):
*/
  __pyx_mstate_global->__pyx_tuple[153] = PyTuple_Pack(3, __pyx_mstate_global->__pyx_n_u_post, __pyx_mstate_global->__pyx_n_u_disableFastWithdrawSwitch, Py_True); if (unlikely(!__pyx_mstate_global->__pyx_tuple[153])) __PYX_ERR(0, 7189, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[153]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[153]);

  /* "unicorn_binance_rest_api/manager.py":7205
 * 
 *         """
 *         return self._request_margin_api('post', 'enableFastWithdrawSwitch', True, data=params)             # <<<<<<<<<<<<<<
 * 
 *     def stop_manager(self):
*/
  __pyx_mstate_global->__pyx_tuple[154] = PyTuple_Pack(3, __pyx_mstate_global->__pyx_n_u_post, __pyx_mstate_global->__pyx_n_u_enableFastWithdrawSwitch, Py_True); if (unlikely(!__pyx_mstate_global->__pyx_tuple[154])) __PYX_ERR(0, 7205, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[154]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[154]);

  /* "unicorn_binance_rest_api/manager.py":66
 * 
 * 
 * class BinanceRestApiManager(object):             # <<<<<<<<<<<<<<
 *     """
 *     A Python SDK to use the Binance REST API`s (com+testnet, com-margin+testnet, com-isolated_margin+testnet,
*/
  __pyx_mstate_global->__pyx_tuple[155] = PyTuple_Pack(1, __pyx_builtin_object); if (unlikely(!__pyx_mstate_global->__pyx_tuple[155])) __PYX_ERR(0, 66, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[155]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[155]);
  __pyx_mstate_global->__pyx_tuple[156] = PyTuple_Pack(1, __pyx_builtin_object); if (unlikely(!__pyx_mstate_global->__pyx_tuple[156])) __PYX_ERR(0, 66, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[156]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[156]);

  /* "unicorn_binance_rest_api/manager.py":199
 *     MINING_TO_FIAT = "MINING_C2C"
 * 
 *     def __init__(self,             # <<<<<<<<<<<<<<
 *                  api_key: Optional[str] = None,
 *                  api_secret: Optional[str] = None,
*/
  __pyx_mstate_global->__pyx_tuple[157] = PyTuple_Pack(12, Py_None, Py_None, Py_None, Py_None, ((PyObject*)Py_True), Py_None, ((PyObject*)Py_False), ((PyObject*)Py_False), Py_None, Py_None, Py_None, ((PyObject*)Py_True)); if (unlikely(!__pyx_mstate_global->__pyx_tuple[157])) __PYX_ERR(0, 199, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[157]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[157]);

  /* "unicorn_binance_rest_api/manager.py":428
 *         return self.WEBSITE_URL + '/' + path
 * 
 *     def _create_futures_api_uri(self, path: str, version: int = 1) -> str:             # <<<<<<<<<<<<<<
 *         url = self.FUTURES_URL
 *         options = {1: self.FUTURES_API_VERSION, 2: self.FUTURES_API_VERSION2}
*/
  __pyx_mstate_global->__pyx_tuple[158] = PyTuple_Pack(1, ((PyObject*)__pyx_mstate_global->__pyx_int_1)); if (unlikely(!__pyx_mstate_global->__pyx_tuple[158])) __PYX_ERR(0, 428, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[158]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[158]);

  /* "unicorn_binance_rest_api/manager.py":473
 *         return params
 * 
 *     def _request(self, method, uri, signed, force_params=False, throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         if self.sigterm is True:
 *             info = f"`BinanceRestApiManager()` instance has already been stopped and cannot be used."
*/
  __pyx_mstate_global->__pyx_tuple[159] = PyTuple_Pack(2, ((PyObject*)Py_False), ((PyObject*)Py_True)); if (unlikely(!__pyx_mstate_global->__pyx_tuple[159])) __PYX_ERR(0, 473, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[159]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[159]);

  /* "unicorn_binance_rest_api/manager.py":558
 *         return self._request(method, uri, signed, throw_exception=throw_exception, **kwargs)
 * 
 *     def _request_futures_api(self, method, path, signed=False, version=1, throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         uri = self._create_futures_api_uri(path, version=version)
 *         return self._request(method, uri, signed, True, throw_exception=throw_exception, **kwargs)
*/
  __pyx_mstate_global->__pyx_tuple[160] = PyTuple_Pack(3, ((PyObject*)Py_False), ((PyObject*)__pyx_mstate_global->__pyx_int_1), ((PyObject*)Py_True)); if (unlikely(!__pyx_mstate_global->__pyx_tuple[160])) __PYX_ERR(0, 558, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[160]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[160]);

  /* "unicorn_binance_rest_api/manager.py":591
 *         return True
 * 
 *     def _handle_response(self, throw_exception=True):             # <<<<<<<<<<<<<<
 *         """
 *         Internal helper for handling API responses from the Binance server.
*/
  __pyx_mstate_global->__pyx_tuple[161] = PyTuple_Pack(1, ((PyObject*)Py_True)); if (unlikely(!__pyx_mstate_global->__pyx_tuple[161])) __PYX_ERR(0, 591, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[161]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[161]);

  /* "unicorn_binance_rest_api/manager.py":1058
 *         return self._get('aggTrades', data=params, version=self.PRIVATE_API_VERSION)
 * 
 *     def aggregate_trade_iter(self, symbol, start_str=None, last_id=None):             # <<<<<<<<<<<<<<
 *         """
 *         Iterate over aggregate trade data from (start_time or last_id) to
*/
  __pyx_mstate_global->__pyx_tuple[162] = PyTuple_Pack(2, Py_None, Py_None); if (unlikely(!__pyx_mstate_global->__pyx_tuple[162])) __PYX_ERR(0, 1058, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[162]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[162]);

  /* "unicorn_binance_rest_api/manager.py":1211
 *         return kline[0][0]
 * 
 *     def get_historical_klines(self, symbol, interval, start_str, end_str=None,             # <<<<<<<<<<<<<<
 *                               limit=500):
 *         """
*/
  __pyx_mstate_global->__pyx_tuple[163] = PyTuple_Pack(2, Py_None, ((PyObject*)__pyx_mstate_global->__pyx_int_500)); if (unlikely(!__pyx_mstate_global->__pyx_tuple[163])) __PYX_ERR(0, 1211, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[163]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[163]);

  /* "unicorn_binance_rest_api/manager.py":1295
 *         return output_data
 * 
 *     def get_historical_klines_generator(self, symbol, interval, start_str, end_str=None):             # <<<<<<<<<<<<<<
 *         """
 *         Get Historical Klines from Binance
*/
  __pyx_mstate_global->__pyx_tuple[164] = PyTuple_Pack(1, Py_None); if (unlikely(!__pyx_mstate_global->__pyx_tuple[164])) __PYX_ERR(0, 1295, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[164]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[164]);

  /* "unicorn_binance_rest_api/manager.py":3186
 *     # User Stream Endpoints
 * 
 *     def stream_get_listen_key(self, output="value", throw_exception=True, **kwargs):             # <<<<<<<<<<<<<<
 *         """Start a new user data stream and return the listen key
 *         If a stream already exists it should return the same key.
*/
  __pyx_mstate_global->__pyx_tuple[165] = PyTuple_Pack(2, ((PyObject*)__pyx_mstate_global->__pyx_n_u_value), ((PyObject*)Py_True)); if (unlikely(!__pyx_mstate_global->__pyx_tuple[165])) __PYX_ERR(0, 3186, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[165]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[165]);

  /* "unicorn_binance_rest_api/manager.py":6034
 *         return self._request_margin_api('get', 'sub-account/universalTransfer', True, data=params)
 * 
 *     def get_used_weight(self, cached: bool = False, cached_timeout: Optional[float] = None) -> Optional[dict]:             # <<<<<<<<<<<<<<
 *         """
 *         Get the used weight from Binance endpoints (weight costs: 1)
*/
  __pyx_mstate_global->__pyx_tuple[166] = PyTuple_Pack(2, ((PyObject*)Py_False), Py_None); if (unlikely(!__pyx_mstate_global->__pyx_tuple[166])) __PYX_ERR(0, 6034, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[166]);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[166]);
  __Pyx_RefNannyFinishContext();
  return 0;
  __pyx_L1_error:;
  __Pyx_RefNannyFinishContext();
  return -1;
}
/* #### Code section: init_constants ### */

static int __Pyx_InitConstants(__pyx_mstatetype *__pyx_mstate) {
  CYTHON_UNUSED_VAR(__pyx_mstate);
  __pyx_mstate->__pyx_umethod_PyDict_Type_get.type = (PyObject*)&PyDict_Type;
  __pyx_mstate->__pyx_umethod_PyDict_Type_get.method_name = &__pyx_mstate->__pyx_n_u_get;
  __pyx_mstate->__pyx_umethod_PyDict_Type_pop.type = (PyObject*)&PyDict_Type;
  __pyx_mstate->__pyx_umethod_PyDict_Type_pop.method_name = &__pyx_mstate->__pyx_n_u_pop;
  __pyx_mstate->__pyx_umethod_PyDict_Type__update.type = (PyObject*)(&PyDict_Type);
  __pyx_mstate->__pyx_umethod_PyDict_Type__update.method_name = &__pyx_mstate->__pyx_n_u_update;
  if (__Pyx_InitStrings(__pyx_string_tab, __pyx_mstate->__pyx_string_tab, __pyx_string_tab_encodings) < 0) __PYX_ERR(0, 1, __pyx_L1_error);
  __pyx_mstate->__pyx_int_0 = PyLong_FromLong(0); if (unlikely(!__pyx_mstate->__pyx_int_0)) __PYX_ERR(0, 1, __pyx_L1_error)
  __pyx_mstate->__pyx_int_1 = PyLong_FromLong(1); if (unlikely(!__pyx_mstate->__pyx_int_1)) __PYX_ERR(0, 1, __pyx_L1_error)
  __pyx_mstate->__pyx_int_2 = PyLong_FromLong(2); if (unlikely(!__pyx_mstate->__pyx_int_2)) __PYX_ERR(0, 1, __pyx_L1_error)
  __pyx_mstate->__pyx_int_3 = PyLong_FromLong(3); if (unlikely(!__pyx_mstate->__pyx_int_3)) __PYX_ERR(0, 1, __pyx_L1_error)
  __pyx_mstate->__pyx_int_10 = PyLong_FromLong(10); if (unlikely(!__pyx_mstate->__pyx_int_10)) __PYX_ERR(0, 1, __pyx_L1_error)
  __pyx_mstate->__pyx_int_12 = PyLong_FromLong(12); if (unlikely(!__pyx_mstate->__pyx_int_12)) __PYX_ERR(0, 1, __pyx_L1_error)
  __pyx_mstate->__pyx_int_200 = PyLong_FromLong(200); if (unlikely(!__pyx_mstate->__pyx_int_200)) __PYX_ERR(0, 1, __pyx_L1_error)
  __pyx_mstate->__pyx_int_300 = PyLong_FromLong(300); if (unlikely(!__pyx_mstate->__pyx_int_300)) __PYX_ERR(0, 1, __pyx_L1_error)
  __pyx_mstate->__pyx_int_500 = PyLong_FromLong(500); if (unlikely(!__pyx_mstate->__pyx_int_500)) __PYX_ERR(0, 1, __pyx_L1_error)
  __pyx_mstate->__pyx_int_1000 = PyLong_FromLong(1000); if (unlikely(!__pyx_mstate->__pyx_int_1000)) __PYX_ERR(0, 1, __pyx_L1_error)
  __pyx_mstate->__pyx_int_3600 = PyLong_FromLong(3600); if (unlikely(!__pyx_mstate->__pyx_int_3600)) __PYX_ERR(0, 1, __pyx_L1_error)
  __pyx_mstate->__pyx_int_3600000 = PyLong_FromLong(3600000L); if (unlikely(!__pyx_mstate->__pyx_int_3600000)) __PYX_ERR(0, 1, __pyx_L1_error)
  __pyx_mstate->__pyx_int_neg_4 = PyLong_FromLong(-4); if (unlikely(!__pyx_mstate->__pyx_int_neg_4)) __PYX_ERR(0, 1, __pyx_L1_error)
  return 0;
  __pyx_L1_error:;
  return -1;
}
/* #### Code section: init_codeobjects ### */
\
        typedef struct {
            unsigned int argcount : 4;
            unsigned int num_posonly_args : 1;
            unsigned int num_kwonly_args : 1;
            unsigned int nlocals : 5;
            unsigned int flags : 10;
            unsigned int first_line : 13;
            unsigned int line_table_length : 15;
        } __Pyx_PyCode_New_function_description;
/* NewCodeObj.proto */
static PyObject* __Pyx_PyCode_New(
        const __Pyx_PyCode_New_function_description descr,
        PyObject * const *varnames,
        PyObject *filename,
        PyObject *funcname,
        const char *line_table,
        PyObject *tuple_dedup_map
);


static int __Pyx_CreateCodeObjects(__pyx_mstatetype *__pyx_mstate) {
  PyObject* tuple_dedup_map = PyDict_New();
  if (unlikely(!tuple_dedup_map)) return -1;
  {
    const __Pyx_PyCode_New_function_description descr = {0, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_GENERATOR), 529, 2};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_data};
    __pyx_mstate_global->__pyx_codeobj_tab[0] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_genexpr, __pyx_k__14, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[0])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {4, 0, 0, 8, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_GENERATOR), 1058, 8};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_symbol, __pyx_mstate->__pyx_n_u_start_str, __pyx_mstate->__pyx_n_u_last_id, __pyx_mstate->__pyx_n_u_trades, __pyx_mstate->__pyx_n_u_start_ts, __pyx_mstate->__pyx_n_u_end_ts, __pyx_mstate->__pyx_n_u_t};
    __pyx_mstate_global->__pyx_codeobj_tab[1] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_aggregate_trade_iter, __pyx_k_1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[1])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {5, 0, 0, 13, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_GENERATOR), 1295, 5};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_symbol, __pyx_mstate->__pyx_n_u_interval, __pyx_mstate->__pyx_n_u_start_str, __pyx_mstate->__pyx_n_u_end_str, __pyx_mstate->__pyx_n_u_limit, __pyx_mstate->__pyx_n_u_timeframe, __pyx_mstate->__pyx_n_u_start_ts, __pyx_mstate->__pyx_n_u_first_valid_ts, __pyx_mstate->__pyx_n_u_end_ts, __pyx_mstate->__pyx_n_u_idx, __pyx_mstate->__pyx_n_u_output_data, __pyx_mstate->__pyx_n_u_o};
    __pyx_mstate_global->__pyx_codeobj_tab[2] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_historical_klines_generator, __pyx_k_K1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[2])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {13, 0, 0, 17, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 199, 1538};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_api_key, __pyx_mstate->__pyx_n_u_api_secret, __pyx_mstate->__pyx_n_u_requests_params, __pyx_mstate->__pyx_n_u_tld, __pyx_mstate->__pyx_n_u_warn_on_update, __pyx_mstate->__pyx_n_u_exchange, __pyx_mstate->__pyx_n_u_disable_colorama, __pyx_mstate->__pyx_n_u_debug, __pyx_mstate->__pyx_n_u_socks5_proxy_server, __pyx_mstate->__pyx_n_u_socks5_proxy_user, __pyx_mstate->__pyx_n_u_socks5_proxy_pass, __pyx_mstate->__pyx_n_u_socks5_proxy_ssl_verification, __pyx_mstate->__pyx_n_u_socks_proxy_uri, __pyx_mstate->__pyx_n_u_error_msg, __pyx_mstate->__pyx_n_u_res, __pyx_mstate->__pyx_n_u_update_msg};
    __pyx_mstate_global->__pyx_codeobj_tab[3] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_init_2, __pyx_k_A_Q_a_1_1_a_A_A_0_1_a_e1B_oQ_Qhg, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[3])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 397, 53};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_info};
    __pyx_mstate_global->__pyx_codeobj_tab[4] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_enter, __pyx_k_A_fCq_4y_1_2Q_1A_Qa_q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[4])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {4, 0, 0, 4, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 405, 42};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_exc_type, __pyx_mstate->__pyx_n_u_exc_value, __pyx_mstate->__pyx_n_u_error_traceback};
    __pyx_mstate_global->__pyx_codeobj_tab[5] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_exit, __pyx_k_A_fCq_M_1_1B_9_nTU, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[5])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 411, 53};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_session};
    __pyx_mstate_global->__pyx_codeobj_tab[6] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_init_session, __pyx_k_A_xwb_c_oQ_0_1D_q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[6])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {4, 0, 0, 5, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 418, 43};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_path, __pyx_mstate->__pyx_n_u_signed, __pyx_mstate->__pyx_n_u_version_2, __pyx_mstate->__pyx_n_u_v};
    __pyx_mstate_global->__pyx_codeobj_tab[7] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_create_api_uri, __pyx_k_9_D_A_t9Bd_Bb_Ba, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[7])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {3, 0, 0, 3, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 422, 29};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_path, __pyx_mstate->__pyx_n_u_version_2};
    __pyx_mstate_global->__pyx_codeobj_tab[8] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_create_margin_api_uri, __pyx_k_31_t_2T_82T_1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[8])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 425, 17};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_path};
    __pyx_mstate_global->__pyx_codeobj_tab[9] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_create_website_uri, __pyx_k_A_t_b, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[9])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {3, 0, 0, 5, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 428, 59};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_path, __pyx_mstate->__pyx_n_u_version_2, __pyx_mstate->__pyx_n_u_url, __pyx_mstate->__pyx_n_u_options};
    __pyx_mstate_global->__pyx_codeobj_tab[10] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_create_futures_api_uri, __pyx_k_E_a_d_3d_0_4q_t2T_7_9Bd_A, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[10])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 433, 18};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_path};
    __pyx_mstate_global->__pyx_codeobj_tab[11] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_create_futures_data_api_uri, __pyx_k_A_t_Rt2Q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[11])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {3, 0, 0, 4, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 436, 55};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_path, __pyx_mstate->__pyx_n_u_version_2, __pyx_mstate->__pyx_n_u_options};
    __pyx_mstate_global->__pyx_codeobj_tab[12] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_create_futures_coin_api_url, __pyx_k_1_i_1_3d_0_4q_t_Rt2WAYb_Ba, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[12])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {3, 0, 0, 5, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 440, 60};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_path, __pyx_mstate->__pyx_n_u_version_2, __pyx_mstate->__pyx_n_u_url, __pyx_mstate->__pyx_n_u_options};
    __pyx_mstate_global->__pyx_codeobj_tab[13] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_create_futures_coin_data_api_ur, __pyx_k_6e9LPQ_d_3d_0_4q_t2T_7_9Bd_A, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[13])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 6, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 445, 90};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_data, __pyx_mstate->__pyx_n_u_ordered_data, __pyx_mstate->__pyx_n_u_query_string, __pyx_mstate->__pyx_n_u_m, __pyx_mstate->__pyx_n_u_d};
    __pyx_mstate_global->__pyx_codeobj_tab[14] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_generate_signature, __pyx_k_A_t_s_q_q_aq_D_Q_D_AT_G1Jl_T_q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[14])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 5, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 451, 92};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_data, __pyx_mstate->__pyx_n_u_has_signature, __pyx_mstate->__pyx_n_u_params, __pyx_mstate->__pyx_n_u_key, __pyx_mstate->__pyx_n_u_value};
    __pyx_mstate_global->__pyx_codeobj_tab[15] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_order_params, __pyx_k_A_E_fA_t3a_gRuA_e1D_1_1_AQ_q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[15])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {6, 0, 0, 18, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 473, 568};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_method, __pyx_mstate->__pyx_n_u_uri, __pyx_mstate->__pyx_n_u_signed, __pyx_mstate->__pyx_n_u_force_params, __pyx_mstate->__pyx_n_u_throw_exception, __pyx_mstate->__pyx_n_u_kwargs, __pyx_mstate->__pyx_n_u_info, __pyx_mstate->__pyx_n_u_api_key, __pyx_mstate->__pyx_n_u_api_secret, __pyx_mstate->__pyx_n_u_data, __pyx_mstate->__pyx_n_u_null_args, __pyx_mstate->__pyx_n_u_i, __pyx_mstate->__pyx_n_u_i, __pyx_mstate->__pyx_n_u_key, __pyx_mstate->__pyx_n_u_value, __pyx_mstate->__pyx_n_u_genexpr, __pyx_mstate->__pyx_n_u_genexpr};
    __pyx_mstate_global->__pyx_codeobj_tab[16] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_request, __pyx_k_4y_1_2Q_1A_Qa_fAQ_q_aq_aq_a_87, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[16])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {6, 0, 0, 8, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 542, 52};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_method, __pyx_mstate->__pyx_n_u_path, __pyx_mstate->__pyx_n_u_signed, __pyx_mstate->__pyx_n_u_version_2, __pyx_mstate->__pyx_n_u_throw_exception, __pyx_mstate->__pyx_n_u_kwargs, __pyx_mstate->__pyx_n_u_uri};
    __pyx_mstate_global->__pyx_codeobj_tab[17] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_request_api, __pyx_k_SST_d_6_t9AXU_2BBUUV, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[17])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {6, 0, 0, 8, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 547, 48};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_method, __pyx_mstate->__pyx_n_u_path, __pyx_mstate->__pyx_n_u_signed, __pyx_mstate->__pyx_n_u_version_2, __pyx_mstate->__pyx_n_u_throw_exception, __pyx_mstate->__pyx_n_u_kwargs, __pyx_mstate->__pyx_n_u_uri};
    __pyx_mstate_global->__pyx_codeobj_tab[18] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_request_margin_api, __pyx_k_0_8_d_t9AXU_2BBUUV, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[18])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {5, 0, 0, 7, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 553, 43};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_method, __pyx_mstate->__pyx_n_u_path, __pyx_mstate->__pyx_n_u_signed, __pyx_mstate->__pyx_n_u_throw_exception, __pyx_mstate->__pyx_n_u_kwargs, __pyx_mstate->__pyx_n_u_uri};
    __pyx_mstate_global->__pyx_codeobj_tab[19] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_request_website, __pyx_k_1_d_aq_t9AXU_2BBUUV, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[19])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {6, 0, 0, 8, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 558, 51};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_method, __pyx_mstate->__pyx_n_u_path, __pyx_mstate->__pyx_n_u_signed, __pyx_mstate->__pyx_n_u_version_2, __pyx_mstate->__pyx_n_u_throw_exception, __pyx_mstate->__pyx_n_u_kwargs, __pyx_mstate->__pyx_n_u_uri};
    __pyx_mstate_global->__pyx_codeobj_tab[20] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_request_futures_api, __pyx_k_1_d_6_t9AXU_8HH, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[20])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {5, 0, 0, 7, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 562, 45};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_method, __pyx_mstate->__pyx_n_u_path, __pyx_mstate->__pyx_n_u_signed, __pyx_mstate->__pyx_n_u_throw_exception, __pyx_mstate->__pyx_n_u_kwargs, __pyx_mstate->__pyx_n_u_uri};
    __pyx_mstate_global->__pyx_codeobj_tab[21] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_request_futures_data_api, __pyx_k_6nA_d_q_t9AXU_8HH, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[21])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {6, 0, 0, 8, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 567, 51};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_method, __pyx_mstate->__pyx_n_u_path, __pyx_mstate->__pyx_n_u_signed, __pyx_mstate->__pyx_n_u_version_2, __pyx_mstate->__pyx_n_u_throw_exception, __pyx_mstate->__pyx_n_u_kwargs, __pyx_mstate->__pyx_n_u_uri};
    __pyx_mstate_global->__pyx_codeobj_tab[22] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_request_futures_coin_api, __pyx_k_6nKq_d_q_ha_t9AXU_8HH, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[22])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {6, 0, 0, 8, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 572, 52};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_method, __pyx_mstate->__pyx_n_u_path, __pyx_mstate->__pyx_n_u_signed, __pyx_mstate->__pyx_n_u_version_2, __pyx_mstate->__pyx_n_u_throw_exception, __pyx_mstate->__pyx_n_u_kwargs, __pyx_mstate->__pyx_n_u_uri};
    __pyx_mstate_global->__pyx_codeobj_tab[23] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_request_futures_coin_data_api, __pyx_k_TU_d_4AV81_t9AXU_8HH, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[23])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 3, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 577, 132};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_weight, __pyx_mstate->__pyx_n_u_error_msg};
    __pyx_mstate_global->__pyx_codeobj_tab[24] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_save_used_weight, __pyx_k_1_T_aq_wc_q_s_4y_XYiq_IU_aabbcH, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[24])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 591, 91};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_throw_exception};
    __pyx_mstate_global->__pyx_codeobj_tab[25] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_handle_response, __pyx_k_q_3a_uD_4y_q_a_4y_Q_A_4yPQ, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[25])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {4, 0, 0, 5, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 607, 27};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_path, __pyx_mstate->__pyx_n_u_signed, __pyx_mstate->__pyx_n_u_version_2, __pyx_mstate->__pyx_n_u_kwargs};
    __pyx_mstate_global->__pyx_codeobj_tab[26] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_q_t_hk, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[26])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {5, 0, 0, 6, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 610, 34};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_path, __pyx_mstate->__pyx_n_u_signed, __pyx_mstate->__pyx_n_u_version_2, __pyx_mstate->__pyx_n_u_throw_exception, __pyx_mstate->__pyx_n_u_kwargs};
    __pyx_mstate_global->__pyx_codeobj_tab[27] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_post_2, __pyx_k_00DA_t_xy_SST, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[27])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {4, 0, 0, 5, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 613, 27};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_path, __pyx_mstate->__pyx_n_u_signed, __pyx_mstate->__pyx_n_u_version_2, __pyx_mstate->__pyx_n_u_kwargs};
    __pyx_mstate_global->__pyx_codeobj_tab[28] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_put_2, __pyx_k_q_t_hk, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[28])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {4, 0, 0, 5, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 616, 27};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_path, __pyx_mstate->__pyx_n_u_signed, __pyx_mstate->__pyx_n_u_version_2, __pyx_mstate->__pyx_n_u_kwargs};
    __pyx_mstate_global->__pyx_codeobj_tab[29] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_delete_2, __pyx_k_2_t_6_A, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[29])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 619, 73};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_installed_version};
    __pyx_mstate_global->__pyx_codeobj_tab[30] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_is_update_availabe, __pyx_k_A_D_A_7_Q_1_A_4_S_1_Cs_1_1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[30])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 635, 11};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self};
    __pyx_mstate_global->__pyx_codeobj_tab[31] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_version, __pyx_k_A_t1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[31])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 643, 115};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self};
    __pyx_mstate_global->__pyx_codeobj_tab[32] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_latest_version, __pyx_k_A_4_a_3e1_a_4uBd_q_d_RRS_4_t_4A, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[32])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 4, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 660, 109};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_respond, __pyx_mstate->__pyx_n_u_latest_release_info, __pyx_mstate->__pyx_n_u_error_msg};
    __pyx_mstate_global->__pyx_codeobj_tab[33] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_latest_release_info, __pyx_k_A_t_T_PPWWX_aq_t1_d_aq_a_1_A_1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[33])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 680, 42};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_user_agent};
    __pyx_mstate_global->__pyx_codeobj_tab[34] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_user_agent, __pyx_k_A_Rt4xs_4_1HTccd_q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[34])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 690, 23};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_products};
    __pyx_mstate_global->__pyx_codeobj_tab[35] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_products, __pyx_k_A_4_q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[35])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 704, 29};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[36] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_exchange_info, __pyx_k_A_t5_5K5PQ, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[36])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 4, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 769, 61};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_symbol, __pyx_mstate->__pyx_n_u_res, __pyx_mstate->__pyx_n_u_item};
    __pyx_mstate_global->__pyx_codeobj_tab[37] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_symbol_info, __pyx_k_AT_d_q_A_HCq_t1Jc_vQ_q_q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[37])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 821, 21};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self};
    __pyx_mstate_global->__pyx_codeobj_tab[38] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_ping, __pyx_k_A_t5_Q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[38])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 838, 21};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self};
    __pyx_mstate_global->__pyx_codeobj_tab[39] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_server_time, __pyx_k_A_t5_Q_2, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[39])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 859, 22};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self};
    __pyx_mstate_global->__pyx_codeobj_tab[40] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_all_tickers, __pyx_k_A0_t5_Q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[40])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 885, 22};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self};
    __pyx_mstate_global->__pyx_codeobj_tab[41] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_orderbook_tickers, __pyx_k_A_t5_hd, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[41])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 917, 26};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[42] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_order_book, __pyx_k_AH_t5_xxt1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[42])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 955, 19};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[43] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_recent_trades, __pyx_k_A_t5_5, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[43])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 986, 26};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[44] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_historical_trades, __pyx_k_A_t5_U_a, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[44])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 1019, 26};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[45] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_aggregate_trades, __pyx_k_AJ_t5_e884q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[45])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 1147, 26};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[46] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_klines, __pyx_k_AR_t5_5_A, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[46])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {3, 0, 0, 4, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 1190, 51};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_symbol, __pyx_mstate->__pyx_n_u_interval, __pyx_mstate->__pyx_n_u_kline};
    __pyx_mstate_global->__pyx_codeobj_tab[47] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_earliest_valid_timestamp, __pyx_k_A_Kq_1_Q_a_A_uARq, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[47])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {6, 0, 0, 13, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 1211, 259};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_symbol, __pyx_mstate->__pyx_n_u_interval, __pyx_mstate->__pyx_n_u_start_str, __pyx_mstate->__pyx_n_u_end_str, __pyx_mstate->__pyx_n_u_limit, __pyx_mstate->__pyx_n_u_output_data, __pyx_mstate->__pyx_n_u_timeframe, __pyx_mstate->__pyx_n_u_start_ts, __pyx_mstate->__pyx_n_u_first_valid_ts, __pyx_mstate->__pyx_n_u_end_ts, __pyx_mstate->__pyx_n_u_idx, __pyx_mstate->__pyx_n_u_temp_data};
    __pyx_mstate_global->__pyx_codeobj_tab[48] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_historical_klines, __pyx_k_A_0_a_AQ_4q_3a_q_1A_1HA_az_1_t1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[48])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 1376, 25};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[49] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_avg_price, __pyx_k_A_t5_U_a_2, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[49])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 1395, 26};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[50] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_ticker, __pyx_k_Av_t5_XXT, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[50])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 1456, 27};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[51] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_symbol_ticker, __pyx_k_AF_t5_hhd, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[51])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 1493, 27};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[52] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_orderbook_ticker, __pyx_k_AX_t5_e884q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[52])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 1541, 22};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[53] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_create_order, __pyx_k_Ah_t6_6_a, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[53])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 3, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 1659, 38};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_timeInForce, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[54] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_order_limit, __pyx_k_aB_gQ_D_1_t_1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[54])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 3, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 1698, 37};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_timeInForce, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[55] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_order_limit_buy, __pyx_k_B_gQ_D_t_q_O1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[55])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 3, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 1736, 36};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_timeInForce, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[56] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_order_limit_sell, __pyx_k_1_gQ_D_t_q_O1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[56])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 1772, 29};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[57] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_order_market, __pyx_k_A8_gQ_D_t_1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[57])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 1805, 29};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[58] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_order_market_buy, __pyx_k_A2_gQ_D_t_1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[58])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 1835, 29};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[59] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_order_market_sell, __pyx_k_A2_gQ_D_t_1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[59])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 1865, 22};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[60] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_create_oco_order, __pyx_k_A_t6_vU, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[60])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 1929, 31};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[61] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_order_oco_buy, __pyx_k_AN_gQ_D_t_Cq, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[61])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 1973, 31};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[62] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_order_oco_sell, __pyx_k_AL_gQ_D_t_Cq, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[62])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 2016, 22};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[63] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_create_test_order, __pyx_k_AN_t6_e1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[63])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 2057, 22};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[64] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_order, __pyx_k_AJ_t5_Q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[64])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 2096, 22};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[65] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_all_orders, __pyx_k_AN_t5_fE, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[65])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 2137, 22};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[66] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_cancel_all_open_orders, __pyx_k_A_t81N_Q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[66])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 2250, 30};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[67] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_cancel_all_open_margin_orders, __pyx_k_AV_t_q_2GwfTYYZ, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[67])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 2359, 21};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[68] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_cancel_order, __pyx_k_A_t81IV5, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[68])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 2391, 22};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[69] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_open_orders, __pyx_k_AF_t5_vU, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[69])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 2429, 22};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[70] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_account, __pyx_k_AJ_t5_F_q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[70])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 5, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 2468, 66};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_asset, __pyx_mstate->__pyx_n_u_params, __pyx_mstate->__pyx_n_u_res, __pyx_mstate->__pyx_n_u_bal};
    __pyx_mstate_global->__pyx_codeobj_tab[71] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_asset_balance, __pyx_k_A_d_c_c_s_1_3axvS_5_a_1_q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[71])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 2499, 22};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[72] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_my_trades, __pyx_k_AF_t5_V5, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[72])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 2536, 18};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self};
    __pyx_mstate_global->__pyx_codeobj_tab[73] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_system_status, __pyx_k_A_t_q_q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[73])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 3, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 2555, 57};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params, __pyx_mstate->__pyx_n_u_res};
    __pyx_mstate_global->__pyx_codeobj_tab[74] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_account_status, __pyx_k_A_d_aw_e1_4s_aq_3aq_q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[74])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 3, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 2579, 60};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params, __pyx_mstate->__pyx_n_u_res};
    __pyx_mstate_global->__pyx_codeobj_tab[75] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_account_api_trading_status, __pyx_k_AL_d_aw_J_PUUV_4s_aq_3aq_q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[75])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 3, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 2654, 58};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params, __pyx_mstate->__pyx_n_u_res};
    __pyx_mstate_global->__pyx_codeobj_tab[76] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_dust_log, __pyx_k_AP_d_aw_e1_4s_aq_3aq_q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[76])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 2731, 25};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[77] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_transfer_dust, __pyx_k_AJ_t_q_fE, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[77])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 2770, 27};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[78] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_asset_dividend_history, __pyx_k_A_t_q_FfEQR, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[78])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 2818, 29};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[79] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_query_universal_transfer_history, __pyx_k_Aj_t_q_A_eST, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[79])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 3, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 2873, 57};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params, __pyx_mstate->__pyx_n_u_res};
    __pyx_mstate_global->__pyx_codeobj_tab[80] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_trade_fee, __pyx_k_A_d_aw_e1_4s_aq_3aq_q_2, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[80])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 3, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 2908, 58};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params, __pyx_mstate->__pyx_n_u_res};
    __pyx_mstate_global->__pyx_codeobj_tab[81] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_asset_details, __pyx_k_AD_d_aw_C6_a_4s_aq_3aq_q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[81])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 3, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 2949, 89};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params, __pyx_mstate->__pyx_n_u_res};
    __pyx_mstate_global->__pyx_codeobj_tab[82] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_withdraw, __pyx_k_AT_83gT_q_V1A_d_ax_I_uTU_4s_aq_3, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[82])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 2998, 27};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[83] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_deposit_history, __pyx_k_Al_t_q_I_uTU, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[83])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 3054, 28};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[84] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_withdraw_history, __pyx_k_Al_t_q_K6QVVW, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[84])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 5, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 3110, 77};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_withdraw_id, __pyx_mstate->__pyx_n_u_params, __pyx_mstate->__pyx_n_u_result, __pyx_mstate->__pyx_n_u_entry};
    __pyx_mstate_global->__pyx_codeobj_tab[85] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_withdraw_history_id, __pyx_k_AL_1MVSXXY_IV1A_uCvT_avS_q_iq_a, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[85])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 3156, 27};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[86] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_deposit_address, __pyx_k_A4_t_q_J_PUUV, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[86])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {3, 0, 0, 5, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 3186, 81};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_output, __pyx_mstate->__pyx_n_u_throw_exception, __pyx_mstate->__pyx_n_u_kwargs, __pyx_mstate->__pyx_n_u_res};
    __pyx_mstate_global->__pyx_codeobj_tab[87] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_stream_get_listen_key, __pyx_k_4A2_d_7_t84q_A_7_Q_3aq_Cq_1_3aq, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[87])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {3, 0, 0, 5, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 3220, 47};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_listenKey, __pyx_mstate->__pyx_n_u_throw_exception, __pyx_mstate->__pyx_n_u_kwargs, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[88] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_stream_keepalive, __pyx_k_t5_7_xxt1_A, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[88])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {3, 0, 0, 5, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 3245, 47};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_listenKey, __pyx_mstate->__pyx_n_u_throw_exception, __pyx_mstate->__pyx_n_u_kwargs, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[89] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_stream_close, __pyx_k_a_t81_gU_a_q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[89])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 3272, 26};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[90] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_margin_account, __pyx_k_Ap_t_q_A_uA, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[90])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 3330, 28};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[91] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_isolated_margin_account, __pyx_k_A_t_q_J_PUUV, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[91])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 3443, 23};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[92] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_margin_asset, __pyx_k_A_t_q_uA, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[92])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 3474, 22};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[93] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_margin_symbol, __pyx_k_A_t_q_e1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[93])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 3506, 30};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[94] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_create_isolated_margin_account, __pyx_k_A6_t_q_0J_QWW, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[94])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 3535, 29};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[95] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_isolated_margin_symbol, __pyx_k_A_t_q_GwfTYYZ, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[95])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 3566, 31};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[96] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_all_isolated_margin_symbols, __pyx_k_AH_t_q_K7RXX, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[96])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 3604, 26};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[97] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_toggle_bnb_burn_spot_margin, __pyx_k_A6_t_q_7_Q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[97])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 3633, 26};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[98] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_bnb_burn_spot_margin, __pyx_k_A_t_q_uA_2, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[98])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 3657, 23};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[99] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_margin_price_index, __pyx_k_A2_t_q_DE, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[99])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 3684, 38};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[100] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_transfer_margin_to_spot, __pyx_k_A8_az_t_q_0C7_PUUV, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[100])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 3715, 38};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[101] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_transfer_spot_to_margin, __pyx_k_A8_az_t_q_0C7_PUUV, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[101])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 3746, 48};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[102] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_transfer_isolated_margin_to_spot, __pyx_k_A_a_a_a_A_t_q_0LGSYY, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[102])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 3781, 48};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[103] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_transfer_spot_to_isolated_margin, __pyx_k_A_a_a_a_A_t_q_0LGSYY, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[103])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 3816, 28};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[104] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_create_margin_loan, __pyx_k_AF_t_q_wfEQR, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[104])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 3853, 29};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[105] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_repay_margin_loan, __pyx_k_AJ_t_q_0_vURS, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[105])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 3893, 30};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[106] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_create_margin_oco_order, __pyx_k_AV_t_q_0DG6QVVW, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[106])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 4002, 30};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[107] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_cancel_margin_oco_order, __pyx_k_A_t_q_2FgVSXXY, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[107])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 4083, 30};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[108] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_margin_oco_order, __pyx_k_AX_t_q_C7_PUUV, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[108])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 4129, 30};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[109] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_open_margin_oco_orders, __pyx_k_AN_t_q_FgVSXXY, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[109])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 4202, 29};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[110] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_create_margin_order, __pyx_k_An_t_q_0_vURS, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[110])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 4323, 29};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[111] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_cancel_margin_order, __pyx_k_AZ_t_q_2B_uTU, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[111])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 4370, 28};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[112] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_margin_loan_details, __pyx_k_A_t_q_gV5PQ, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[112])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 4418, 29};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[113] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_margin_repay_details, __pyx_k_Ah_t_q_wfEQR, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[113])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 4472, 29};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[114] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_margin_order, __pyx_k_A_t_q_wfEQR, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[114])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 4520, 30};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[115] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_open_margin_orders, __pyx_k_A_t_q_DG6QVVW, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[115])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 4570, 30};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[116] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_open_isolated_margin_orders, __pyx_k_A_t_q_DG6QVVW, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[116])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 4620, 30};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[117] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_all_margin_orders, __pyx_k_Av_t_q_C7_PUUV, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[117])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 4681, 29};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[118] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_margin_trades, __pyx_k_At_t_q_B_uTU, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[118])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 4741, 29};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[119] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_max_margin_loan, __pyx_k_A_t_q_GwfTYYZ_2, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[119])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 4766, 30};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[120] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_max_margin_transfer, __pyx_k_A0_t_q_I_PVV, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[120])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {3, 0, 0, 5, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 4794, 81};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_output, __pyx_mstate->__pyx_n_u_throw_exception, __pyx_mstate->__pyx_n_u_kwargs, __pyx_mstate->__pyx_n_u_res};
    __pyx_mstate_global->__pyx_codeobj_tab[121] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_margin_stream_get_listen_key, __pyx_k_12_d_ax_A_uTU_77J_7_Q_3aq_Cq_1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[121])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {3, 0, 0, 5, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 4828, 47};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_listenKey, __pyx_mstate->__pyx_n_u_throw_exception, __pyx_mstate->__pyx_n_u_kwargs, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[122] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_margin_stream_keepalive, __pyx_k_1_t_q_A_uTU_88K1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[122])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {3, 0, 0, 5, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 4853, 48};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_listenKey, __pyx_mstate->__pyx_n_u_throw_exception, __pyx_mstate->__pyx_n_u_kwargs, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[123] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_margin_stream_close, __pyx_k_Q_t_q_2DG7RWWX_88K1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[123])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {4, 0, 0, 7, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 4880, 91};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_symbol, __pyx_mstate->__pyx_n_u_output, __pyx_mstate->__pyx_n_u_throw_exception, __pyx_mstate->__pyx_n_u_kwargs, __pyx_mstate->__pyx_n_u_params, __pyx_mstate->__pyx_n_u_res};
    __pyx_mstate_global->__pyx_codeobj_tab[124] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_isolated_margin_stream_get_liste, __pyx_k_LA8_a_d_ax_J_QXX_77J_7_Q_3aq_Cq, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[124])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {4, 0, 0, 6, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 4920, 54};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_symbol, __pyx_mstate->__pyx_n_u_listenKey, __pyx_mstate->__pyx_n_u_throw_exception, __pyx_mstate->__pyx_n_u_kwargs, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[125] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_isolated_margin_stream_keepalive, __pyx_k_B_a_t_q_J_QXX_88K1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[125])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {4, 0, 0, 6, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 4948, 54};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_symbol, __pyx_mstate->__pyx_n_u_listenKey, __pyx_mstate->__pyx_n_u_throw_exception, __pyx_mstate->__pyx_n_u_kwargs, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[126] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_isolated_margin_stream_close, __pyx_k_a_a_t_q_2MWT_a_88K1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[126])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 4978, 30};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[127] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_lending_product_list, __pyx_k_A_t_q_MWTZZ, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[127])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 4986, 30};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[128] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_lending_daily_quota_left, __pyx_k_A_t_q_NgU_a, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[128])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 4994, 30};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[129] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_purchase_lending_product, __pyx_k_A_t_q_0J_QWW, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[129])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 5002, 31};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[130] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_lending_daily_redemption_quo, __pyx_k_A_t_q_TT_aaffg, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[130])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 5010, 29};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[131] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_redeem_lending_product, __pyx_k_A_t_q_0H_vUZZ, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[131])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 5018, 30};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[132] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_lending_position, __pyx_k_A_t_q_OwV_aab, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[132])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 5026, 30};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[133] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_fixed_activity_project_list, __pyx_k_A_t_q_GwfTYYZ_3, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[133])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 5076, 29};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[134] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_lending_account, __pyx_k_A_t_q_H_vUZZ, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[134])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 5084, 30};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[135] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_lending_purchase_history, __pyx_k_A_t_q_OwV_aab, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[135])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 5092, 31};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[136] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_lending_redemption_history, __pyx_k_A_t_q_QQXX_ccd, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[136])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 5100, 31};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[137] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_lending_interest_history, __pyx_k_A_t_q_PPWW_bbc, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[137])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 5108, 30};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[138] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_change_fixed_activity_to_daily_p, __pyx_k_A_t_q_0K7RXX, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[138])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 5118, 26};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[139] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_sub_account_list, __pyx_k_AJ_t_q_C6_a, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[139])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 5157, 29};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[140] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_sub_account_transfer_history, __pyx_k_A_t_q_SSYY, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[140])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 5207, 29};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[141] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_sub_account_futures_transfer, __pyx_k_A_t_q_WW_bbc, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[141])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 5257, 28};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[142] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_create_sub_account_futures_trans, __pyx_k_A_t_q_0XX_ccd, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[142])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 5289, 33};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[143] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_sub_account_assets, __pyx_k_A_t_q_EV5PXX_a, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[143])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 5338, 28};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[144] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_query_subaccount_spot_summary, __pyx_k_AH_t_q_J_PUUV, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[144])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 5376, 27};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[145] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_subaccount_deposit_address, __pyx_k_A8_t_q_MVSXXY, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[145])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 5406, 28};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[146] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_subaccount_deposit_history, __pyx_k_Ap_t_q_LFRWWX, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[146])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 5464, 26};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[147] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_subaccount_futures_margin_st, __pyx_k_A_t_q_EV5PQ, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[147])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 5495, 27};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[148] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_enable_subaccount_margin, __pyx_k_A2_t_q_0MVSXXY, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[148])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 5522, 28};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[149] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_subaccount_margin_details, __pyx_k_AB_t_q_MVSXXY, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[149])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 5589, 29};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[150] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_subaccount_margin_summary, __pyx_k_AF_t_q_TTZZ, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[150])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 5626, 27};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[151] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_enable_subaccount_futures, __pyx_k_A2_t_q_0NfTYYZ, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[151])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 5653, 28};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[152] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_subaccount_futures_details, __pyx_k_A_t_q_NfTYYZ, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[152])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 5703, 29};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[153] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_subaccount_futures_summary, __pyx_k_Ad_t_q_UU_a, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[153])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 5755, 28};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[154] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_subaccount_futures_positionr, __pyx_k_A_t_q_SSYY_2, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[154])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 5787, 28};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[155] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_make_subaccount_futures_transfer, __pyx_k_A8_t_q_0PPVV, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[155])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 5817, 27};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[156] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_make_subaccount_margin_transfer, __pyx_k_A4_t_q_0OvUZZ, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[156])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 5845, 28};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[157] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_make_subaccount_to_subaccount_tr, __pyx_k_A2_t_q_0QQWW, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[157])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 5872, 28};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[158] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_make_subaccount_to_master_transf, __pyx_k_A_t_q_0TTZZ, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[158])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 5897, 29};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[159] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_subaccount_transfer_history, __pyx_k_A_t_q_VV_aab, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[159])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 5947, 28};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[160] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_make_universal_transfer, __pyx_k_A_t_q_0QQWW, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[160])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 5980, 29};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[161] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_universal_transfer_history, __pyx_k_Ah_t_q_PPVV, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[161])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {3, 0, 0, 3, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 6034, 114};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_cached, __pyx_mstate->__pyx_n_u_cached_timeout};
    __pyx_mstate_global->__pyx_codeobj_tab[162] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_used_weight, __pyx_k_hn4DD___7_Q_gU_d_s_E_uD_M_4_1M, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[162])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 6067, 18};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self};
    __pyx_mstate_global->__pyx_codeobj_tab[163] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_ping, __pyx_k_A_t, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[163])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 6075, 18};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self};
    __pyx_mstate_global->__pyx_codeobj_tab[164] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_time, __pyx_k_A_t, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[164])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6083, 23};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[165] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_exchange_info, __pyx_k_A_t_0_Q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[165])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6091, 22};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[166] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_order_book, __pyx_k_A_t_a, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[166])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6099, 22};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[167] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_recent_trades, __pyx_k_A_t_q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[167])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6107, 23};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[168] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_historical_trades, __pyx_k_A_t_0DE, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[168])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6115, 22};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[169] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_aggregate_trades, __pyx_k_A_t_U, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[169])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6124, 22};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[170] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_klines, __pyx_k_A_t_q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[170])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6132, 23};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[171] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_mark_price, __pyx_k_A_t_0_Q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[171])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6140, 22};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[172] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_funding_rate, __pyx_k_A_t_uA, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[172])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6148, 22};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[173] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_ticker, __pyx_k_A_t_uA, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[173])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6156, 23};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[174] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_symbol_ticker, __pyx_k_A_t_0_Q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[174])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6164, 23};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[175] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_orderbook_ticker, __pyx_k_A_t_0EU, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[175])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6172, 23};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[176] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_liquidation_orders, __pyx_k_A_t_0I_a, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[176])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6180, 23};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[177] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_open_interest, __pyx_k_A_t_0GuA, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[177])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6188, 23};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[178] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_open_interest_hist, __pyx_k_A_t_Qg5I_a, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[178])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6196, 25};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[179] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_leverage_bracket, __pyx_k_A_t_0C6_a, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[179])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6204, 25};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[180] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_account_transfer, __pyx_k_A_t_q_0DF_q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[180])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6212, 26};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[181] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_auto_cancel_all_open_ord, __pyx_k_A0_t_1GvURS, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[181])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6238, 35};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[182] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_commission_rate, __pyx_k_A_t_Qg5GxsRYY__dde, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[182])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6246, 25};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[183] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_transfer_history, __pyx_k_A_t_q_C6_a, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[183])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6254, 24};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[184] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_create_order, __pyx_k_A_t_Q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[184])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 3, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6262, 60};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params, __pyx_mstate->__pyx_n_u_query_string};
    __pyx_mstate_global->__pyx_codeobj_tab[185] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_place_batch_order, __pyx_k_A_y_81G1_a_AQ_t_e1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[185])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6273, 24};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[186] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_get_order, __pyx_k_A_t_uA_2, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[186])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6282, 24};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[187] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_get_open_orders, __pyx_k_A_t_fE, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[187])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6291, 24};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[188] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_get_all_orders, __pyx_k_A_t_V5, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[188])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6300, 24};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[189] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_cancel_order, __pyx_k_A_t_9F_q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[189])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6309, 25};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[190] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_cancel_all_open_orders, __pyx_k_A_t_3DF_q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[190])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6318, 24};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[191] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_cancel_orders, __pyx_k_A_t_Q_2, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[191])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6327, 29};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[192] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_account_balance, __pyx_k_A_t_6_EQR, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[192])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6336, 29};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[193] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_account, __pyx_k_A_t_6_EQR, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[193])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6345, 24};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[194] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_change_leverage, __pyx_k_A_t_V5_2, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[194])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6354, 24};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[195] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_change_margin_type, __pyx_k_A_t_vU, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[195])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6362, 25};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[196] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_change_position_margin, __pyx_k_A_t_1C6_a, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[196])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6371, 27};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[197] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_position_margin_history, __pyx_k_A_t_0J_PUUV, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[197])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6380, 31};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[198] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_position_information, __pyx_k_A_t_0_hcQVVW, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[198])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6389, 24};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[199] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_account_trades, __pyx_k_A_t_fE, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[199])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6398, 24};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[200] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_income_history, __pyx_k_A_t_Q_3, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[200])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6407, 26};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[201] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_change_position_mode, __pyx_k_A_t_1FfEQR, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[201])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6416, 26};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[202] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_get_position_mode, __pyx_k_A_t_0EV5PQ, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[202])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {3, 0, 0, 5, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6425, 80};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_output, __pyx_mstate->__pyx_n_u_throw_exception, __pyx_mstate->__pyx_n_u_kwargs, __pyx_mstate->__pyx_n_u_res};
    __pyx_mstate_global->__pyx_codeobj_tab[203] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_stream_get_listen_key, __pyx_k_A2_d_q_WG5PQ_88K1_7_Q_3aq_Cq_1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[203])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {3, 0, 0, 5, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6459, 46};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_listenKey, __pyx_mstate->__pyx_n_u_throw_exception, __pyx_mstate->__pyx_n_u_kwargs, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[204] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_stream_keepalive, __pyx_k_2_t_WG5PQ_99LA, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[204])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {3, 0, 0, 5, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6484, 46};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_listenKey, __pyx_mstate->__pyx_n_u_throw_exception, __pyx_mstate->__pyx_n_u_kwargs, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[205] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_stream_close, __pyx_k_a_t_weST_99LA, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[205])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 6510, 18};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self};
    __pyx_mstate_global->__pyx_codeobj_tab[206] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_coin_ping, __pyx_k_A_t_QgQ, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[206])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 6519, 18};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self};
    __pyx_mstate_global->__pyx_codeobj_tab[207] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_coin_time, __pyx_k_A_t_QgQ, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[207])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6528, 23};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[208] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_coin_exchange_info, __pyx_k_A_t_Qg5EU, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[208])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6537, 22};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[209] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_coin_order_book, __pyx_k_A_t_QgYe1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[209])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6546, 22};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[210] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_coin_recent_trades, __pyx_k_A_t_QgZuA, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[210])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6554, 23};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[211] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_coin_historical_trades, __pyx_k_A_t_Qg5I_a_2, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[211])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6563, 22};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[212] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_coin_aggregate_trades, __pyx_k_A_t_Qg_q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[212])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6573, 22};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[213] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_coin_klines, __pyx_k_A_t_QgZuA_2, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[213])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6582, 23};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[214] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_coin_continous_klines, __pyx_k_A_t_Qg5I_a_2, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[214])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6591, 23};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[215] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_coin_index_price_klines, __pyx_k_A_t_Qg5I_a, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[215])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6599, 23};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[216] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_coin_mark_price_klines, __pyx_k_A_t_Qg5H_Q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[216])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6607, 23};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[217] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_coin_mark_price, __pyx_k_A_t_Qg5EU, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[217])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6616, 22};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[218] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_coin_funding_rate, __pyx_k_A_t_Qg_E, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[218])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6624, 22};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[219] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_coin_ticker, __pyx_k_A_t_Qg_E_2, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[219])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6633, 23};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[220] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_coin_symbol_ticker, __pyx_k_A_t_Qg5EU, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[220])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6642, 23};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[221] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_coin_orderbook_ticker, __pyx_k_A_t_Qg5J_q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[221])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6651, 23};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[222] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_coin_liquidation_orders, __pyx_k_A_t_Qg5GuA, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[222])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6660, 23};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[223] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_coin_open_interest, __pyx_k_A_t_Qg5EU, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[223])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6669, 24};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[224] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_coin_open_interest_hist, __pyx_k_A_t_2_7_NeST, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[224])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6678, 32};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[225] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_coin_leverage_bracket, __pyx_k_A_t_Q_hc_e1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[225])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6689, 25};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[226] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_new_transfer_history, __pyx_k_A_t_q_A_uA, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[226])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6699, 28};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[227] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_universal_transfer, __pyx_k_A_t_q_gV5, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[227])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6709, 24};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[228] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_coin_create_order, __pyx_k_A_t_QhivU, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[228])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 3, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6718, 61};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params, __pyx_mstate->__pyx_n_u_query_string};
    __pyx_mstate_global->__pyx_codeobj_tab[229] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_coin_place_batch_order, __pyx_k_A_y_81G1_a_AQ_t_QhoV5PQ, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[229])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6729, 24};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[230] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_coin_get_order, __pyx_k_A_t_QgYfE, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[230])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6738, 24};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[231] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_coin_get_open_orders, __pyx_k_A_t_Qg_6_a, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[231])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6747, 27};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[232] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_coin_get_all_orders, __pyx_k_A_t_Q_vU, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[232])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6758, 27};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[233] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_coin_cancel_order, __pyx_k_A_t_Q_iwfE, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[233])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6769, 28};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[234] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_coin_cancel_all_open_ord, __pyx_k_A_t_Q_wfE, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[234])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6780, 25};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[235] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_coin_cancel_orders, __pyx_k_A_t_Q_oV5, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[235])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6791, 27};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[236] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_coin_account_balance, __pyx_k_A_t_Q_gV5, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[236])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6802, 27};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[237] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_coin_account, __pyx_k_A_t_Q_gV5, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[237])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6813, 27};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[238] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_coin_change_leverage, __pyx_k_A_t_Q_L_vU, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[238])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6824, 27};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[239] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_coin_change_margin_type, __pyx_k_A_t_Q_N_uA, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[239])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6835, 26};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[240] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_coin_change_position_mar, __pyx_k_A_t_Q_fE, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[240])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6846, 26};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[241] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_coin_position_margin_his, __pyx_k_A_t_Q_V5, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[241])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6856, 26};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[242] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_coin_position_informatio, __pyx_k_A_t_Qg5EV5PQ, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[242])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6865, 24};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[243] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_coin_account_trades, __pyx_k_A_t_Qg_6_a_2, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[243])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6873, 24};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[244] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_coin_income_history, __pyx_k_A_t_QgZvU, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[244])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6881, 27};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[245] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_coin_change_position_mod, __pyx_k_A_t_Qh6K6QVVW, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[245])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6889, 27};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[246] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_coin_get_position_mode, __pyx_k_A_t_Qg5J_PUUV, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[246])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {3, 0, 0, 5, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6898, 82};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_output, __pyx_mstate->__pyx_n_u_throw_exception, __pyx_mstate->__pyx_n_u_kwargs, __pyx_mstate->__pyx_n_u_res};
    __pyx_mstate_global->__pyx_codeobj_tab[247] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_coin_stream_get_listen_k, __pyx_k_11A_2_d_AX_PUUV_PPQ_7_Q_3aq_Cq, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[247])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {3, 0, 0, 5, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6932, 48};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_listenKey, __pyx_mstate->__pyx_n_u_throw_exception, __pyx_mstate->__pyx_n_u_kwargs, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[248] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_coin_stream_keepalive, __pyx_k_7q_t_Qg_PUUV_QQR, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[248])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {3, 0, 0, 5, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6957, 48};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_listenKey, __pyx_mstate->__pyx_n_u_throw_exception, __pyx_mstate->__pyx_n_u_kwargs, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[249] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_futures_coin_stream_close, __pyx_k_31_t_Qj_WGSXXY_QQR, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[249])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 6982, 27};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[250] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_all_coins_info, __pyx_k_AV_t_q_H_eST, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[250])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 7059, 26};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[251] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_get_account_snapshot, __pyx_k_Ad_t_q_B_Q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[251])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 7175, 27};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[252] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_disable_fast_withdraw_switch, __pyx_k_A_t_q_0MVSXXY, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[252])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 7191, 27};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_params};
    __pyx_mstate_global->__pyx_codeobj_tab[253] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_enable_fast_withdraw_switch, __pyx_k_A_t_q_0LFRWWX, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[253])) goto bad;
  }
  {
    const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 7207, 71};
    PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_error_msg};
    __pyx_mstate_global->__pyx_codeobj_tab[254] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_unicorn_binance_rest_api_manager_2, __pyx_mstate->__pyx_n_u_stop_manager, __pyx_k_A_e3a_Kq_t9G1_HF_VVW_q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[254])) goto bad;
  }
  Py_DECREF(tuple_dedup_map);
  return 0;
  bad:
  Py_DECREF(tuple_dedup_map);
  return -1;
}
/* #### Code section: init_globals ### */

static int __Pyx_InitGlobals(void) {
  /* PythonCompatibility.init */
  if (likely(__Pyx_init_co_variables() == 0)); else

if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L1_error)

  /* CachedMethodType.init */
  #if CYTHON_COMPILING_IN_LIMITED_API
{
    PyObject *typesModule=NULL;
    typesModule = PyImport_ImportModule("types");
    if (typesModule) {
        __pyx_mstate_global->__Pyx_CachedMethodType = PyObject_GetAttrString(typesModule, "MethodType");
        Py_DECREF(typesModule);
    }
} // error handling follows
#endif

if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L1_error)

  return 0;
  __pyx_L1_error:;
  return -1;
}
/* #### Code section: cleanup_globals ### */
/* #### Code section: cleanup_module ### */
/* #### Code section: main_method ### */
/* #### Code section: utility_code_pragmas ### */
#ifdef _MSC_VER
#pragma warning( push )
/* Warning 4127: conditional expression is constant
 * Cython uses constant conditional expressions to allow in inline functions to be optimized at
 * compile-time, so this warning is not useful
 */
#pragma warning( disable : 4127 )
#endif



/* #### Code section: utility_code_def ### */

/* --- Runtime support code --- */
/* Refnanny */
#if CYTHON_REFNANNY
static __Pyx_RefNannyAPIStruct *__Pyx_RefNannyImportAPI(const char *modname) {
    PyObject *m = NULL, *p = NULL;
    void *r = NULL;
    m = PyImport_ImportModule(modname);
    if (!m) goto end;
    p = PyObject_GetAttrString(m, "RefNannyAPI");
    if (!p) goto end;
    r = PyLong_AsVoidPtr(p);
end:
    Py_XDECREF(p);
    Py_XDECREF(m);
    return (__Pyx_RefNannyAPIStruct *)r;
}
#endif

/* PyErrExceptionMatches */
#if CYTHON_FAST_THREAD_STATE
static int __Pyx_PyErr_ExceptionMatchesTuple(PyObject *exc_type, PyObject *tuple) {
    Py_ssize_t i, n;
    n = PyTuple_GET_SIZE(tuple);
    for (i=0; i<n; i++) {
        if (exc_type == PyTuple_GET_ITEM(tuple, i)) return 1;
    }
    for (i=0; i<n; i++) {
        if (__Pyx_PyErr_GivenExceptionMatches(exc_type, PyTuple_GET_ITEM(tuple, i))) return 1;
    }
    return 0;
}
static CYTHON_INLINE int __Pyx_PyErr_ExceptionMatchesInState(PyThreadState* tstate, PyObject* err) {
    int result;
    PyObject *exc_type;
#if PY_VERSION_HEX >= 0x030C00A6
    PyObject *current_exception = tstate->current_exception;
    if (unlikely(!current_exception)) return 0;
    exc_type = (PyObject*) Py_TYPE(current_exception);
    if (exc_type == err) return 1;
#else
    exc_type = tstate->curexc_type;
    if (exc_type == err) return 1;
    if (unlikely(!exc_type)) return 0;
#endif
    #if CYTHON_AVOID_BORROWED_REFS
    Py_INCREF(exc_type);
    #endif
    if (unlikely(PyTuple_Check(err))) {
        result = __Pyx_PyErr_ExceptionMatchesTuple(exc_type, err);
    } else {
        result = __Pyx_PyErr_GivenExceptionMatches(exc_type, err);
    }
    #if CYTHON_AVOID_BORROWED_REFS
    Py_DECREF(exc_type);
    #endif
    return result;
}
#endif

/* PyErrFetchRestore */
#if CYTHON_FAST_THREAD_STATE
static CYTHON_INLINE void __Pyx_ErrRestoreInState(PyThreadState *tstate, PyObject *type, PyObject *value, PyObject *tb) {
#if PY_VERSION_HEX >= 0x030C00A6
    PyObject *tmp_value;
    assert(type == NULL || (value != NULL && type == (PyObject*) Py_TYPE(value)));
    if (value) {
        #if CYTHON_COMPILING_IN_CPYTHON
        if (unlikely(((PyBaseExceptionObject*) value)->traceback != tb))
        #endif
            PyException_SetTraceback(value, tb);
    }
    tmp_value = tstate->current_exception;
    tstate->current_exception = value;
    Py_XDECREF(tmp_value);
    Py_XDECREF(type);
    Py_XDECREF(tb);
#else
    PyObject *tmp_type, *tmp_value, *tmp_tb;
    tmp_type = tstate->curexc_type;
    tmp_value = tstate->curexc_value;
    tmp_tb = tstate->curexc_traceback;
    tstate->curexc_type = type;
    tstate->curexc_value = value;
    tstate->curexc_traceback = tb;
    Py_XDECREF(tmp_type);
    Py_XDECREF(tmp_value);
    Py_XDECREF(tmp_tb);
#endif
}
static CYTHON_INLINE void __Pyx_ErrFetchInState(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb) {
#if PY_VERSION_HEX >= 0x030C00A6
    PyObject* exc_value;
    exc_value = tstate->current_exception;
    tstate->current_exception = 0;
    *value = exc_value;
    *type = NULL;
    *tb = NULL;
    if (exc_value) {
        *type = (PyObject*) Py_TYPE(exc_value);
        Py_INCREF(*type);
        #if CYTHON_COMPILING_IN_CPYTHON
        *tb = ((PyBaseExceptionObject*) exc_value)->traceback;
        Py_XINCREF(*tb);
        #else
        *tb = PyException_GetTraceback(exc_value);
        #endif
    }
#else
    *type = tstate->curexc_type;
    *value = tstate->curexc_value;
    *tb = tstate->curexc_traceback;
    tstate->curexc_type = 0;
    tstate->curexc_value = 0;
    tstate->curexc_traceback = 0;
#endif
}
#endif

/* PyObjectGetAttrStr */
#if CYTHON_USE_TYPE_SLOTS
static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStr(PyObject* obj, PyObject* attr_name) {
    PyTypeObject* tp = Py_TYPE(obj);
    if (likely(tp->tp_getattro))
        return tp->tp_getattro(obj, attr_name);
    return PyObject_GetAttr(obj, attr_name);
}
#endif

/* PyObjectGetAttrStrNoError */
#if __PYX_LIMITED_VERSION_HEX < 0x030d0000
static void __Pyx_PyObject_GetAttrStr_ClearAttributeError(void) {
    __Pyx_PyThreadState_declare
    __Pyx_PyThreadState_assign
    if (likely(__Pyx_PyErr_ExceptionMatches(PyExc_AttributeError)))
        __Pyx_PyErr_Clear();
}
#endif
static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStrNoError(PyObject* obj, PyObject* attr_name) {
    PyObject *result;
#if __PYX_LIMITED_VERSION_HEX >= 0x030d0000
    (void) PyObject_GetOptionalAttr(obj, attr_name, &result);
    return result;
#else
#if CYTHON_COMPILING_IN_CPYTHON && CYTHON_USE_TYPE_SLOTS
    PyTypeObject* tp = Py_TYPE(obj);
    if (likely(tp->tp_getattro == PyObject_GenericGetAttr)) {
        return _PyObject_GenericGetAttrWithDict(obj, attr_name, NULL, 1);
    }
#endif
    result = __Pyx_PyObject_GetAttrStr(obj, attr_name);
    if (unlikely(!result)) {
        __Pyx_PyObject_GetAttrStr_ClearAttributeError();
    }
    return result;
#endif
}

/* GetBuiltinName */
static PyObject *__Pyx_GetBuiltinName(PyObject *name) {
    PyObject* result = __Pyx_PyObject_GetAttrStrNoError(__pyx_mstate_global->__pyx_b, name);
    if (unlikely(!result) && !PyErr_Occurred()) {
        PyErr_Format(PyExc_NameError,
            "name '%U' is not defined", name);
    }
    return result;
}

/* TupleAndListFromArray */
#if !CYTHON_COMPILING_IN_CPYTHON && CYTHON_METH_FASTCALL
static CYTHON_INLINE PyObject *
__Pyx_PyTuple_FromArray(PyObject *const *src, Py_ssize_t n)
{
    PyObject *res;
    Py_ssize_t i;
    if (n <= 0) {
        return __Pyx_NewRef(__pyx_mstate_global->__pyx_empty_tuple);
    }
    res = PyTuple_New(n);
    if (unlikely(res == NULL)) return NULL;
    for (i = 0; i < n; i++) {
        if (unlikely(__Pyx_PyTuple_SET_ITEM(res, i, src[i]) < 0)) {
            Py_DECREF(res);
            return NULL;
        }
        Py_INCREF(src[i]);
    }
    return res;
}
#elif CYTHON_COMPILING_IN_CPYTHON
static CYTHON_INLINE void __Pyx_copy_object_array(PyObject *const *CYTHON_RESTRICT src, PyObject** CYTHON_RESTRICT dest, Py_ssize_t length) {
    PyObject *v;
    Py_ssize_t i;
    for (i = 0; i < length; i++) {
        v = dest[i] = src[i];
        Py_INCREF(v);
    }
}
static CYTHON_INLINE PyObject *
__Pyx_PyTuple_FromArray(PyObject *const *src, Py_ssize_t n)
{
    PyObject *res;
    if (n <= 0) {
        return __Pyx_NewRef(__pyx_mstate_global->__pyx_empty_tuple);
    }
    res = PyTuple_New(n);
    if (unlikely(res == NULL)) return NULL;
    __Pyx_copy_object_array(src, ((PyTupleObject*)res)->ob_item, n);
    return res;
}
static CYTHON_INLINE PyObject *
__Pyx_PyList_FromArray(PyObject *const *src, Py_ssize_t n)
{
    PyObject *res;
    if (n <= 0) {
        return PyList_New(0);
    }
    res = PyList_New(n);
    if (unlikely(res == NULL)) return NULL;
    __Pyx_copy_object_array(src, ((PyListObject*)res)->ob_item, n);
    return res;
}
#endif

/* BytesEquals */
static CYTHON_INLINE int __Pyx_PyBytes_Equals(PyObject* s1, PyObject* s2, int equals) {
#if CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API || CYTHON_COMPILING_IN_GRAAL ||\
        !(CYTHON_ASSUME_SAFE_SIZE && CYTHON_ASSUME_SAFE_MACROS)
    return PyObject_RichCompareBool(s1, s2, equals);
#else
    if (s1 == s2) {
        return (equals == Py_EQ);
    } else if (PyBytes_CheckExact(s1) & PyBytes_CheckExact(s2)) {
        const char *ps1, *ps2;
        Py_ssize_t length = PyBytes_GET_SIZE(s1);
        if (length != PyBytes_GET_SIZE(s2))
            return (equals == Py_NE);
        ps1 = PyBytes_AS_STRING(s1);
        ps2 = PyBytes_AS_STRING(s2);
        if (ps1[0] != ps2[0]) {
            return (equals == Py_NE);
        } else if (length == 1) {
            return (equals == Py_EQ);
        } else {
            int result;
#if CYTHON_USE_UNICODE_INTERNALS && (PY_VERSION_HEX < 0x030B0000)
            Py_hash_t hash1, hash2;
            hash1 = ((PyBytesObject*)s1)->ob_shash;
            hash2 = ((PyBytesObject*)s2)->ob_shash;
            if (hash1 != hash2 && hash1 != -1 && hash2 != -1) {
                return (equals == Py_NE);
            }
#endif
            result = memcmp(ps1, ps2, (size_t)length);
            return (equals == Py_EQ) ? (result == 0) : (result != 0);
        }
    } else if ((s1 == Py_None) & PyBytes_CheckExact(s2)) {
        return (equals == Py_NE);
    } else if ((s2 == Py_None) & PyBytes_CheckExact(s1)) {
        return (equals == Py_NE);
    } else {
        int result;
        PyObject* py_result = PyObject_RichCompare(s1, s2, equals);
        if (!py_result)
            return -1;
        result = __Pyx_PyObject_IsTrue(py_result);
        Py_DECREF(py_result);
        return result;
    }
#endif
}

/* UnicodeEquals */
static CYTHON_INLINE int __Pyx_PyUnicode_Equals(PyObject* s1, PyObject* s2, int equals) {
#if CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API || CYTHON_COMPILING_IN_GRAAL
    return PyObject_RichCompareBool(s1, s2, equals);
#else
    int s1_is_unicode, s2_is_unicode;
    if (s1 == s2) {
        goto return_eq;
    }
    s1_is_unicode = PyUnicode_CheckExact(s1);
    s2_is_unicode = PyUnicode_CheckExact(s2);
    if (s1_is_unicode & s2_is_unicode) {
        Py_ssize_t length, length2;
        int kind;
        void *data1, *data2;
        #if !CYTHON_COMPILING_IN_LIMITED_API
        if (unlikely(__Pyx_PyUnicode_READY(s1) < 0) || unlikely(__Pyx_PyUnicode_READY(s2) < 0))
            return -1;
        #endif
        length = __Pyx_PyUnicode_GET_LENGTH(s1);
        #if !CYTHON_ASSUME_SAFE_SIZE
        if (unlikely(length < 0)) return -1;
        #endif
        length2 = __Pyx_PyUnicode_GET_LENGTH(s2);
        #if !CYTHON_ASSUME_SAFE_SIZE
        if (unlikely(length2 < 0)) return -1;
        #endif
        if (length != length2) {
            goto return_ne;
        }
#if CYTHON_USE_UNICODE_INTERNALS
        {
            Py_hash_t hash1, hash2;
            hash1 = ((PyASCIIObject*)s1)->hash;
            hash2 = ((PyASCIIObject*)s2)->hash;
            if (hash1 != hash2 && hash1 != -1 && hash2 != -1) {
                goto return_ne;
            }
        }
#endif
        kind = __Pyx_PyUnicode_KIND(s1);
        if (kind != __Pyx_PyUnicode_KIND(s2)) {
            goto return_ne;
        }
        data1 = __Pyx_PyUnicode_DATA(s1);
        data2 = __Pyx_PyUnicode_DATA(s2);
        if (__Pyx_PyUnicode_READ(kind, data1, 0) != __Pyx_PyUnicode_READ(kind, data2, 0)) {
            goto return_ne;
        } else if (length == 1) {
            goto return_eq;
        } else {
            int result = memcmp(data1, data2, (size_t)(length * kind));
            return (equals == Py_EQ) ? (result == 0) : (result != 0);
        }
    } else if ((s1 == Py_None) & s2_is_unicode) {
        goto return_ne;
    } else if ((s2 == Py_None) & s1_is_unicode) {
        goto return_ne;
    } else {
        int result;
        PyObject* py_result = PyObject_RichCompare(s1, s2, equals);
        if (!py_result)
            return -1;
        result = __Pyx_PyObject_IsTrue(py_result);
        Py_DECREF(py_result);
        return result;
    }
return_eq:
    return (equals == Py_EQ);
return_ne:
    return (equals == Py_NE);
#endif
}

/* fastcall */
#if CYTHON_METH_FASTCALL
static CYTHON_INLINE PyObject * __Pyx_GetKwValue_FASTCALL(PyObject *kwnames, PyObject *const *kwvalues, PyObject *s)
{
    Py_ssize_t i, n = __Pyx_PyTuple_GET_SIZE(kwnames);
    #if !CYTHON_ASSUME_SAFE_SIZE
    if (unlikely(n == -1)) return NULL;
    #endif
    for (i = 0; i < n; i++)
    {
        PyObject *namei = __Pyx_PyTuple_GET_ITEM(kwnames, i);
        #if !CYTHON_ASSUME_SAFE_MACROS
        if (unlikely(!namei)) return NULL;
        #endif
        if (s == namei) return kwvalues[i];
    }
    for (i = 0; i < n; i++)
    {
        PyObject *namei = __Pyx_PyTuple_GET_ITEM(kwnames, i);
        #if !CYTHON_ASSUME_SAFE_MACROS
        if (unlikely(!namei)) return NULL;
        #endif
        int eq = __Pyx_PyUnicode_Equals(s, namei, Py_EQ);
        if (unlikely(eq != 0)) {
            if (unlikely(eq < 0)) return NULL;
            return kwvalues[i];
        }
    }
    return NULL;
}
#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030d0000 || CYTHON_COMPILING_IN_LIMITED_API
CYTHON_UNUSED static PyObject *__Pyx_KwargsAsDict_FASTCALL(PyObject *kwnames, PyObject *const *kwvalues) {
    Py_ssize_t i, nkwargs;
    PyObject *dict;
#if !CYTHON_ASSUME_SAFE_SIZE
    nkwargs = PyTuple_Size(kwnames);
    if (unlikely(nkwargs < 0)) return NULL;
#else
    nkwargs = PyTuple_GET_SIZE(kwnames);
#endif
    dict = PyDict_New();
    if (unlikely(!dict))
        return NULL;
    for (i=0; i<nkwargs; i++) {
#if !CYTHON_ASSUME_SAFE_MACROS
        PyObject *key = PyTuple_GetItem(kwnames, i);
        if (!key) goto bad;
#else
        PyObject *key = PyTuple_GET_ITEM(kwnames, i);
#endif
        if (unlikely(PyDict_SetItem(dict, key, kwvalues[i]) < 0))
            goto bad;
    }
    return dict;
bad:
    Py_DECREF(dict);
    return NULL;
}
#endif
#endif

/* RaiseDoubleKeywords */
static void __Pyx_RaiseDoubleKeywordsError(
    const char* func_name,
    PyObject* kw_name)
{
    PyErr_Format(PyExc_TypeError,
        "%s() got multiple values for keyword argument '%U'", func_name, kw_name);
}

/* PyFunctionFastCall */
#if CYTHON_FAST_PYCALL && !CYTHON_VECTORCALL
static PyObject* __Pyx_PyFunction_FastCallNoKw(PyCodeObject *co, PyObject *const *args, Py_ssize_t na,
                                               PyObject *globals) {
    PyFrameObject *f;
    PyThreadState *tstate = __Pyx_PyThreadState_Current;
    PyObject **fastlocals;
    Py_ssize_t i;
    PyObject *result;
    assert(globals != NULL);
    /* XXX Perhaps we should create a specialized
       PyFrame_New() that doesn't take locals, but does
       take builtins without sanity checking them.
       */
    assert(tstate != NULL);
    f = PyFrame_New(tstate, co, globals, NULL);
    if (f == NULL) {
        return NULL;
    }
    fastlocals = __Pyx_PyFrame_GetLocalsplus(f);
    for (i = 0; i < na; i++) {
        Py_INCREF(*args);
        fastlocals[i] = *args++;
    }
    result = PyEval_EvalFrameEx(f,0);
    ++tstate->recursion_depth;
    Py_DECREF(f);
    --tstate->recursion_depth;
    return result;
}
static PyObject *__Pyx_PyFunction_FastCallDict(PyObject *func, PyObject *const *args, Py_ssize_t nargs, PyObject *kwargs) {
    PyCodeObject *co = (PyCodeObject *)PyFunction_GET_CODE(func);
    PyObject *globals = PyFunction_GET_GLOBALS(func);
    PyObject *argdefs = PyFunction_GET_DEFAULTS(func);
    PyObject *closure;
    PyObject *kwdefs;
    PyObject *kwtuple, **k;
    PyObject **d;
    Py_ssize_t nd;
    Py_ssize_t nk;
    PyObject *result;
    assert(kwargs == NULL || PyDict_Check(kwargs));
    nk = kwargs ? PyDict_Size(kwargs) : 0;
    if (unlikely(Py_EnterRecursiveCall(" while calling a Python object"))) {
        return NULL;
    }
    if (
            co->co_kwonlyargcount == 0 &&
            likely(kwargs == NULL || nk == 0) &&
            co->co_flags == (CO_OPTIMIZED | CO_NEWLOCALS | CO_NOFREE)) {
        if (argdefs == NULL && co->co_argcount == nargs) {
            result = __Pyx_PyFunction_FastCallNoKw(co, args, nargs, globals);
            goto done;
        }
        else if (nargs == 0 && argdefs != NULL
                 && co->co_argcount == Py_SIZE(argdefs)) {
            /* function called with no arguments, but all parameters have
               a default value: use default values as arguments .*/
            args = &PyTuple_GET_ITEM(argdefs, 0);
            result =__Pyx_PyFunction_FastCallNoKw(co, args, Py_SIZE(argdefs), globals);
            goto done;
        }
    }
    if (kwargs != NULL) {
        Py_ssize_t pos, i;
        kwtuple = PyTuple_New(2 * nk);
        if (kwtuple == NULL) {
            result = NULL;
            goto done;
        }
        k = &PyTuple_GET_ITEM(kwtuple, 0);
        pos = i = 0;
        while (PyDict_Next(kwargs, &pos, &k[i], &k[i+1])) {
            Py_INCREF(k[i]);
            Py_INCREF(k[i+1]);
            i += 2;
        }
        nk = i / 2;
    }
    else {
        kwtuple = NULL;
        k = NULL;
    }
    closure = PyFunction_GET_CLOSURE(func);
    kwdefs = PyFunction_GET_KW_DEFAULTS(func);
    if (argdefs != NULL) {
        d = &PyTuple_GET_ITEM(argdefs, 0);
        nd = Py_SIZE(argdefs);
    }
    else {
        d = NULL;
        nd = 0;
    }
    result = PyEval_EvalCodeEx((PyObject*)co, globals, (PyObject *)NULL,
                               args, (int)nargs,
                               k, (int)nk,
                               d, (int)nd, kwdefs, closure);
    Py_XDECREF(kwtuple);
done:
    Py_LeaveRecursiveCall();
    return result;
}
#endif

/* PyObjectCall */
#if CYTHON_COMPILING_IN_CPYTHON
static CYTHON_INLINE PyObject* __Pyx_PyObject_Call(PyObject *func, PyObject *arg, PyObject *kw) {
    PyObject *result;
    ternaryfunc call = Py_TYPE(func)->tp_call;
    if (unlikely(!call))
        return PyObject_Call(func, arg, kw);
    if (unlikely(Py_EnterRecursiveCall(" while calling a Python object")))
        return NULL;
    result = (*call)(func, arg, kw);
    Py_LeaveRecursiveCall();
    if (unlikely(!result) && unlikely(!PyErr_Occurred())) {
        PyErr_SetString(
            PyExc_SystemError,
            "NULL result without error in PyObject_Call");
    }
    return result;
}
#endif

/* PyObjectCallMethO */
#if CYTHON_COMPILING_IN_CPYTHON
static CYTHON_INLINE PyObject* __Pyx_PyObject_CallMethO(PyObject *func, PyObject *arg) {
    PyObject *self, *result;
    PyCFunction cfunc;
    cfunc = __Pyx_CyOrPyCFunction_GET_FUNCTION(func);
    self = __Pyx_CyOrPyCFunction_GET_SELF(func);
    if (unlikely(Py_EnterRecursiveCall(" while calling a Python object")))
        return NULL;
    result = cfunc(self, arg);
    Py_LeaveRecursiveCall();
    if (unlikely(!result) && unlikely(!PyErr_Occurred())) {
        PyErr_SetString(
            PyExc_SystemError,
            "NULL result without error in PyObject_Call");
    }
    return result;
}
#endif

/* PyObjectFastCall */
#if PY_VERSION_HEX < 0x03090000 || CYTHON_COMPILING_IN_LIMITED_API
static PyObject* __Pyx_PyObject_FastCall_fallback(PyObject *func, PyObject * const*args, size_t nargs, PyObject *kwargs) {
    PyObject *argstuple;
    PyObject *result = 0;
    size_t i;
    argstuple = PyTuple_New((Py_ssize_t)nargs);
    if (unlikely(!argstuple)) return NULL;
    for (i = 0; i < nargs; i++) {
        Py_INCREF(args[i]);
        if (__Pyx_PyTuple_SET_ITEM(argstuple, (Py_ssize_t)i, args[i]) != (0)) goto bad;
    }
    result = __Pyx_PyObject_Call(func, argstuple, kwargs);
  bad:
    Py_DECREF(argstuple);
    return result;
}
#endif
#if CYTHON_VECTORCALL && !CYTHON_COMPILING_IN_LIMITED_API
  #if PY_VERSION_HEX < 0x03090000
    #define __Pyx_PyVectorcall_Function(callable) _PyVectorcall_Function(callable)
  #elif CYTHON_COMPILING_IN_CPYTHON
static CYTHON_INLINE vectorcallfunc __Pyx_PyVectorcall_Function(PyObject *callable) {
    PyTypeObject *tp = Py_TYPE(callable);
    #if defined(__Pyx_CyFunction_USED)
    if (__Pyx_CyFunction_CheckExact(callable)) {
        return __Pyx_CyFunction_func_vectorcall(callable);
    }
    #endif
    if (!PyType_HasFeature(tp, Py_TPFLAGS_HAVE_VECTORCALL)) {
        return NULL;
    }
    assert(PyCallable_Check(callable));
    Py_ssize_t offset = tp->tp_vectorcall_offset;
    assert(offset > 0);
    vectorcallfunc ptr;
    memcpy(&ptr, (char *) callable + offset, sizeof(ptr));
    return ptr;
}
  #else
    #define __Pyx_PyVectorcall_Function(callable) PyVectorcall_Function(callable)
  #endif
#endif
static CYTHON_INLINE PyObject* __Pyx_PyObject_FastCallDict(PyObject *func, PyObject *const *args, size_t _nargs, PyObject *kwargs) {
    Py_ssize_t nargs = __Pyx_PyVectorcall_NARGS(_nargs);
#if CYTHON_COMPILING_IN_CPYTHON
    if (nargs == 0 && kwargs == NULL) {
        if (__Pyx_CyOrPyCFunction_Check(func) && likely( __Pyx_CyOrPyCFunction_GET_FLAGS(func) & METH_NOARGS))
            return __Pyx_PyObject_CallMethO(func, NULL);
    }
    else if (nargs == 1 && kwargs == NULL) {
        if (__Pyx_CyOrPyCFunction_Check(func) && likely( __Pyx_CyOrPyCFunction_GET_FLAGS(func) & METH_O))
            return __Pyx_PyObject_CallMethO(func, args[0]);
    }
#endif
    #if PY_VERSION_HEX < 0x030800B1
    #if CYTHON_FAST_PYCCALL
    if (PyCFunction_Check(func)) {
        if (kwargs) {
            return _PyCFunction_FastCallDict(func, args, nargs, kwargs);
        } else {
            return _PyCFunction_FastCallKeywords(func, args, nargs, NULL);
        }
    }
    if (!kwargs && __Pyx_IS_TYPE(func, &PyMethodDescr_Type)) {
        return _PyMethodDescr_FastCallKeywords(func, args, nargs, NULL);
    }
    #endif
    #if CYTHON_FAST_PYCALL
    if (PyFunction_Check(func)) {
        return __Pyx_PyFunction_FastCallDict(func, args, nargs, kwargs);
    }
    #endif
    #endif
    if (kwargs == NULL) {
        #if CYTHON_VECTORCALL && !CYTHON_COMPILING_IN_LIMITED_API
        vectorcallfunc f = __Pyx_PyVectorcall_Function(func);
        if (f) {
            return f(func, args, _nargs, NULL);
        }
        #elif defined(__Pyx_CyFunction_USED) && CYTHON_BACKPORT_VECTORCALL
        if (__Pyx_CyFunction_CheckExact(func)) {
            __pyx_vectorcallfunc f = __Pyx_CyFunction_func_vectorcall(func);
            if (f) return f(func, args, _nargs, NULL);
        }
        #elif CYTHON_COMPILING_IN_LIMITED_API && CYTHON_VECTORCALL
        return PyObject_Vectorcall(func, args, _nargs, NULL);
        #endif
    }
    if (nargs == 0) {
        return __Pyx_PyObject_Call(func, __pyx_mstate_global->__pyx_empty_tuple, kwargs);
    }
    #if PY_VERSION_HEX >= 0x03090000 && !CYTHON_COMPILING_IN_LIMITED_API
    return PyObject_VectorcallDict(func, args, (size_t)nargs, kwargs);
    #else
    return __Pyx_PyObject_FastCall_fallback(func, args, (size_t)nargs, kwargs);
    #endif
}

/* UnpackUnboundCMethod */
#if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX < 0x030C0000
static PyObject *__Pyx_SelflessCall(PyObject *method, PyObject *args, PyObject *kwargs) {
    PyObject *result;
    PyObject *selfless_args = PyTuple_GetSlice(args, 1, PyTuple_Size(args));
    if (unlikely(!selfless_args)) return NULL;
    result = PyObject_Call(method, selfless_args, kwargs);
    Py_DECREF(selfless_args);
    return result;
}
#elif CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03090000
static PyObject *__Pyx_SelflessCall(PyObject *method, PyObject **args, Py_ssize_t nargs, PyObject *kwnames) {
        return _PyObject_Vectorcall
            (method, args ? args+1 : NULL, nargs ? nargs-1 : 0, kwnames);
}
#else
static PyObject *__Pyx_SelflessCall(PyObject *method, PyObject *const *args, Py_ssize_t nargs, PyObject *kwnames) {
    return
#if PY_VERSION_HEX < 0x03090000
    _PyObject_Vectorcall
#else
    PyObject_Vectorcall
#endif
        (method, args ? args+1 : NULL, nargs ? (size_t) nargs-1 : 0, kwnames);
}
#endif
static PyMethodDef __Pyx_UnboundCMethod_Def = {
     "CythonUnboundCMethod",
     __PYX_REINTERPRET_FUNCION(PyCFunction, __Pyx_SelflessCall),
#if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX < 0x030C0000
     METH_VARARGS | METH_KEYWORDS,
#else
     METH_FASTCALL | METH_KEYWORDS,
#endif
     NULL
};
static int __Pyx_TryUnpackUnboundCMethod(__Pyx_CachedCFunction* target) {
    PyObject *method, *result=NULL;
    method = __Pyx_PyObject_GetAttrStr(target->type, *target->method_name);
    if (unlikely(!method))
        return -1;
    result = method;
#if CYTHON_COMPILING_IN_CPYTHON
    if (likely(__Pyx_TypeCheck(method, &PyMethodDescr_Type)))
    {
        PyMethodDescrObject *descr = (PyMethodDescrObject*) method;
        target->func = descr->d_method->ml_meth;
        target->flag = descr->d_method->ml_flags & ~(METH_CLASS | METH_STATIC | METH_COEXIST | METH_STACKLESS);
    } else
#endif
#if CYTHON_COMPILING_IN_PYPY
#else
    if (PyCFunction_Check(method))
#endif
    {
        PyObject *self;
        int self_found;
#if CYTHON_COMPILING_IN_LIMITED_API || CYTHON_COMPILING_IN_PYPY
        self = PyObject_GetAttrString(method, "__self__");
        if (!self) {
            PyErr_Clear();
        }
#else
        self = PyCFunction_GET_SELF(method);
#endif
        self_found = (self && self != Py_None);
#if CYTHON_COMPILING_IN_LIMITED_API || CYTHON_COMPILING_IN_PYPY
        Py_XDECREF(self);
#endif
        if (self_found) {
            PyObject *unbound_method = PyCFunction_New(&__Pyx_UnboundCMethod_Def, method);
            if (unlikely(!unbound_method)) return -1;
            Py_DECREF(method);
            result = unbound_method;
        }
    }
#if !CYTHON_COMPILING_IN_CPYTHON_FREETHREADING
    if (unlikely(target->method)) {
        Py_DECREF(result);
    } else
#endif
    target->method = result;
    return 0;
}

/* CallUnboundCMethod2 */
#if CYTHON_COMPILING_IN_CPYTHON
static CYTHON_INLINE PyObject *__Pyx_CallUnboundCMethod2(__Pyx_CachedCFunction *cfunc, PyObject *self, PyObject *arg1, PyObject *arg2) {
    int was_initialized = __Pyx_CachedCFunction_GetAndSetInitializing(cfunc);
    if (likely(was_initialized == 2 && cfunc->func)) {
        PyObject *args[2] = {arg1, arg2};
        if (cfunc->flag == METH_FASTCALL) {
            return __Pyx_CallCFunctionFast(cfunc, self, args, 2);
        }
        if (cfunc->flag == (METH_FASTCALL | METH_KEYWORDS))
            return __Pyx_CallCFunctionFastWithKeywords(cfunc, self, args, 2, NULL);
    }
#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING
    else if (unlikely(was_initialized == 1)) {
        __Pyx_CachedCFunction tmp_cfunc = {
#ifndef __cplusplus
            0
#endif
        };
        tmp_cfunc.type = cfunc->type;
        tmp_cfunc.method_name = cfunc->method_name;
        return __Pyx__CallUnboundCMethod2(&tmp_cfunc, self, arg1, arg2);
    }
#endif
    PyObject *result = __Pyx__CallUnboundCMethod2(cfunc, self, arg1, arg2);
    __Pyx_CachedCFunction_SetFinishedInitializing(cfunc);
    return result;
}
#endif
static PyObject* __Pyx__CallUnboundCMethod2(__Pyx_CachedCFunction* cfunc, PyObject* self, PyObject* arg1, PyObject* arg2){
    if (unlikely(!cfunc->func && !cfunc->method) && unlikely(__Pyx_TryUnpackUnboundCMethod(cfunc) < 0)) return NULL;
#if CYTHON_COMPILING_IN_CPYTHON
    if (cfunc->func && (cfunc->flag & METH_VARARGS)) {
        PyObject *result = NULL;
        PyObject *args = PyTuple_New(2);
        if (unlikely(!args)) return NULL;
        Py_INCREF(arg1);
        PyTuple_SET_ITEM(args, 0, arg1);
        Py_INCREF(arg2);
        PyTuple_SET_ITEM(args, 1, arg2);
        if (cfunc->flag & METH_KEYWORDS)
            result = __Pyx_CallCFunctionWithKeywords(cfunc, self, args, NULL);
        else
            result = __Pyx_CallCFunction(cfunc, self, args);
        Py_DECREF(args);
        return result;
    }
#endif
    {
        PyObject *args[4] = {NULL, self, arg1, arg2};
        return __Pyx_PyObject_FastCall(cfunc->method, args+1, 3 | __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET);
    }
}

/* ParseKeywords */
static int __Pyx_ValidateDuplicatePosArgs(
    PyObject *kwds,
    PyObject ** const argnames[],
    PyObject ** const *first_kw_arg,
    const char* function_name)
{
    PyObject ** const *name = argnames;
    while (name != first_kw_arg) {
        PyObject *key = **name;
        int found = PyDict_Contains(kwds, key);
        if (unlikely(found)) {
            if (found == 1) __Pyx_RaiseDoubleKeywordsError(function_name, key);
            goto bad;
        }
        name++;
    }
    return 0;
bad:
    return -1;
}
#if CYTHON_USE_UNICODE_INTERNALS
static CYTHON_INLINE int __Pyx_UnicodeKeywordsEqual(PyObject *s1, PyObject *s2) {
    int kind;
    Py_ssize_t len = PyUnicode_GET_LENGTH(s1);
    if (len != PyUnicode_GET_LENGTH(s2)) return 0;
    kind = PyUnicode_KIND(s1);
    if (kind != PyUnicode_KIND(s2)) return 0;
    const void *data1 = PyUnicode_DATA(s1);
    const void *data2 = PyUnicode_DATA(s2);
    return (memcmp(data1, data2, (size_t) len * (size_t) kind) == 0);
}
#endif
static int __Pyx_MatchKeywordArg_str(
    PyObject *key,
    PyObject ** const argnames[],
    PyObject ** const *first_kw_arg,
    size_t *index_found,
    const char *function_name)
{
    PyObject ** const *name;
    #if CYTHON_USE_UNICODE_INTERNALS
    Py_hash_t key_hash = ((PyASCIIObject*)key)->hash;
    if (unlikely(key_hash == -1)) {
        key_hash = PyObject_Hash(key);
        if (unlikely(key_hash == -1))
            goto bad;
    }
    #endif
    name = first_kw_arg;
    while (*name) {
        PyObject *name_str = **name;
        #if CYTHON_USE_UNICODE_INTERNALS
        if (key_hash == ((PyASCIIObject*)name_str)->hash && __Pyx_UnicodeKeywordsEqual(name_str, key)) {
            *index_found = (size_t) (name - argnames);
            return 1;
        }
        #else
        #if CYTHON_ASSUME_SAFE_SIZE
        if (PyUnicode_GET_LENGTH(name_str) == PyUnicode_GET_LENGTH(key))
        #endif
        {
            int cmp = PyUnicode_Compare(name_str, key);
            if (cmp < 0 && unlikely(PyErr_Occurred())) goto bad;
            if (cmp == 0) {
                *index_found = (size_t) (name - argnames);
                return 1;
            }
        }
        #endif
        name++;
    }
    name = argnames;
    while (name != first_kw_arg) {
        PyObject *name_str = **name;
        #if CYTHON_USE_UNICODE_INTERNALS
        if (unlikely(key_hash == ((PyASCIIObject*)name_str)->hash)) {
            if (__Pyx_UnicodeKeywordsEqual(name_str, key))
                goto arg_passed_twice;
        }
        #else
        #if CYTHON_ASSUME_SAFE_SIZE
        if (PyUnicode_GET_LENGTH(name_str) == PyUnicode_GET_LENGTH(key))
        #endif
        {
            if (unlikely(name_str == key)) goto arg_passed_twice;
            int cmp = PyUnicode_Compare(name_str, key);
            if (cmp < 0 && unlikely(PyErr_Occurred())) goto bad;
            if (cmp == 0) goto arg_passed_twice;
        }
        #endif
        name++;
    }
    return 0;
arg_passed_twice:
    __Pyx_RaiseDoubleKeywordsError(function_name, key);
    goto bad;
bad:
    return -1;
}
static int __Pyx_MatchKeywordArg_nostr(
    PyObject *key,
    PyObject ** const argnames[],
    PyObject ** const *first_kw_arg,
    size_t *index_found,
    const char *function_name)
{
    PyObject ** const *name;
    if (unlikely(!PyUnicode_Check(key))) goto invalid_keyword_type;
    name = first_kw_arg;
    while (*name) {
        int cmp = PyObject_RichCompareBool(**name, key, Py_EQ);
        if (cmp == 1) {
            *index_found = (size_t) (name - argnames);
            return 1;
        }
        if (unlikely(cmp == -1)) goto bad;
        name++;
    }
    name = argnames;
    while (name != first_kw_arg) {
        int cmp = PyObject_RichCompareBool(**name, key, Py_EQ);
        if (unlikely(cmp != 0)) {
            if (cmp == 1) goto arg_passed_twice;
            else goto bad;
        }
        name++;
    }
    return 0;
arg_passed_twice:
    __Pyx_RaiseDoubleKeywordsError(function_name, key);
    goto bad;
invalid_keyword_type:
    PyErr_Format(PyExc_TypeError,
        "%.200s() keywords must be strings", function_name);
    goto bad;
bad:
    return -1;
}
static CYTHON_INLINE int __Pyx_MatchKeywordArg(
    PyObject *key,
    PyObject ** const argnames[],
    PyObject ** const *first_kw_arg,
    size_t *index_found,
    const char *function_name)
{
    return likely(PyUnicode_CheckExact(key)) ?
        __Pyx_MatchKeywordArg_str(key, argnames, first_kw_arg, index_found, function_name) :
        __Pyx_MatchKeywordArg_nostr(key, argnames, first_kw_arg, index_found, function_name);
}
static void __Pyx_RejectUnknownKeyword(
    PyObject *kwds,
    PyObject ** const argnames[],
    PyObject ** const *first_kw_arg,
    const char *function_name)
{
    Py_ssize_t pos = 0;
    PyObject *key = NULL;
    __Pyx_BEGIN_CRITICAL_SECTION(kwds);
    while (PyDict_Next(kwds, &pos, &key, NULL)) {
        PyObject** const *name = first_kw_arg;
        while (*name && (**name != key)) name++;
        if (!*name) {
            #if CYTHON_AVOID_BORROWED_REFS
            Py_INCREF(key);
            #endif
            size_t index_found = 0;
            int cmp = __Pyx_MatchKeywordArg(key, argnames, first_kw_arg, &index_found, function_name);
            if (cmp != 1) {
                if (cmp == 0) {
                    PyErr_Format(PyExc_TypeError,
                        "%s() got an unexpected keyword argument '%U'",
                        function_name, key);
                }
                #if CYTHON_AVOID_BORROWED_REFS
                Py_DECREF(key);
                #endif
                break;
            }
            #if CYTHON_AVOID_BORROWED_REFS
            Py_DECREF(key);
            #endif
        }
    }
    __Pyx_END_CRITICAL_SECTION();
    assert(PyErr_Occurred());
}
static int __Pyx_ParseKeywordDict(
    PyObject *kwds,
    PyObject ** const argnames[],
    PyObject *values[],
    Py_ssize_t num_pos_args,
    Py_ssize_t num_kwargs,
    const char* function_name,
    int ignore_unknown_kwargs)
{
    PyObject** const *name;
    PyObject** const *first_kw_arg = argnames + num_pos_args;
    Py_ssize_t extracted = 0;
#if !CYTHON_COMPILING_IN_PYPY || defined(PyArg_ValidateKeywordArguments)
    if (unlikely(!PyArg_ValidateKeywordArguments(kwds))) return -1;
#endif
    name = first_kw_arg;
    while (*name && num_kwargs > extracted) {
        PyObject * key = **name;
        PyObject *value;
        int found = 0;
        #if __PYX_LIMITED_VERSION_HEX >= 0x030d0000
        found = PyDict_GetItemRef(kwds, key, &value);
        #else
        value = PyDict_GetItemWithError(kwds, key);
        if (value) {
            Py_INCREF(value);
            found = 1;
        } else {
            if (unlikely(PyErr_Occurred())) goto bad;
        }
        #endif
        if (found) {
            if (unlikely(found < 0)) goto bad;
            values[name-argnames] = value;
            extracted++;
        }
        name++;
    }
    if (num_kwargs > extracted) {
        if (ignore_unknown_kwargs) {
            if (unlikely(__Pyx_ValidateDuplicatePosArgs(kwds, argnames, first_kw_arg, function_name) == -1))
                goto bad;
        } else {
            __Pyx_RejectUnknownKeyword(kwds, argnames, first_kw_arg, function_name);
            goto bad;
        }
    }
    return 0;
bad:
    return -1;
}
static int __Pyx_ParseKeywordDictToDict(
    PyObject *kwds,
    PyObject ** const argnames[],
    PyObject *kwds2,
    PyObject *values[],
    Py_ssize_t num_pos_args,
    const char* function_name)
{
    PyObject** const *name;
    PyObject** const *first_kw_arg = argnames + num_pos_args;
    Py_ssize_t len;
#if !CYTHON_COMPILING_IN_PYPY || defined(PyArg_ValidateKeywordArguments)
    if (unlikely(!PyArg_ValidateKeywordArguments(kwds))) return -1;
#endif
    if (PyDict_Update(kwds2, kwds) < 0) goto bad;
    name = first_kw_arg;
    while (*name) {
        PyObject *key = **name;
        PyObject *value;
#if !CYTHON_COMPILING_IN_LIMITED_API && (PY_VERSION_HEX >= 0x030d00A2 || defined(PyDict_Pop))
        int found = PyDict_Pop(kwds2, key, &value);
        if (found) {
            if (unlikely(found < 0)) goto bad;
            values[name-argnames] = value;
        }
#elif __PYX_LIMITED_VERSION_HEX >= 0x030d0000
        int found = PyDict_GetItemRef(kwds2, key, &value);
        if (found) {
            if (unlikely(found < 0)) goto bad;
            values[name-argnames] = value;
            if (unlikely(PyDict_DelItem(kwds2, key) < 0)) goto bad;
        }
#else
    #if CYTHON_COMPILING_IN_CPYTHON
        value = _PyDict_Pop(kwds2, key, kwds2);
    #else
        value = __Pyx_CallUnboundCMethod2(&__pyx_mstate_global->__pyx_umethod_PyDict_Type_pop, kwds2, key, kwds2);
    #endif
        if (value == kwds2) {
            Py_DECREF(value);
        } else {
            if (unlikely(!value)) goto bad;
            values[name-argnames] = value;
        }
#endif
        name++;
    }
    len = PyDict_Size(kwds2);
    if (len > 0) {
        return __Pyx_ValidateDuplicatePosArgs(kwds, argnames, first_kw_arg, function_name);
    } else if (unlikely(len == -1)) {
        goto bad;
    }
    return 0;
bad:
    return -1;
}
static int __Pyx_ParseKeywordsTuple(
    PyObject *kwds,
    PyObject * const *kwvalues,
    PyObject ** const argnames[],
    PyObject *kwds2,
    PyObject *values[],
    Py_ssize_t num_pos_args,
    Py_ssize_t num_kwargs,
    const char* function_name,
    int ignore_unknown_kwargs)
{
    PyObject *key = NULL;
    PyObject** const * name;
    PyObject** const *first_kw_arg = argnames + num_pos_args;
    for (Py_ssize_t pos = 0; pos < num_kwargs; pos++) {
#if CYTHON_AVOID_BORROWED_REFS
        key = __Pyx_PySequence_ITEM(kwds, pos);
#else
        key = __Pyx_PyTuple_GET_ITEM(kwds, pos);
#endif
#if !CYTHON_ASSUME_SAFE_MACROS
        if (unlikely(!key)) goto bad;
#endif
        name = first_kw_arg;
        while (*name && (**name != key)) name++;
        if (*name) {
            PyObject *value = kwvalues[pos];
            values[name-argnames] = __Pyx_NewRef(value);
        } else {
            size_t index_found = 0;
            int cmp = __Pyx_MatchKeywordArg(key, argnames, first_kw_arg, &index_found, function_name);
            if (cmp == 1) {
                PyObject *value = kwvalues[pos];
                values[index_found] = __Pyx_NewRef(value);
            } else {
                if (unlikely(cmp == -1)) goto bad;
                if (kwds2) {
                    PyObject *value = kwvalues[pos];
                    if (unlikely(PyDict_SetItem(kwds2, key, value))) goto bad;
                } else if (!ignore_unknown_kwargs) {
                    goto invalid_keyword;
                }
            }
        }
        #if CYTHON_AVOID_BORROWED_REFS
        Py_DECREF(key);
        key = NULL;
        #endif
    }
    return 0;
invalid_keyword:
    PyErr_Format(PyExc_TypeError,
        "%s() got an unexpected keyword argument '%U'",
        function_name, key);
    goto bad;
bad:
    #if CYTHON_AVOID_BORROWED_REFS
    Py_XDECREF(key);
    #endif
    return -1;
}
static int __Pyx_ParseKeywords(
    PyObject *kwds,
    PyObject * const *kwvalues,
    PyObject ** const argnames[],
    PyObject *kwds2,
    PyObject *values[],
    Py_ssize_t num_pos_args,
    Py_ssize_t num_kwargs,
    const char* function_name,
    int ignore_unknown_kwargs)
{
    if (CYTHON_METH_FASTCALL && likely(PyTuple_Check(kwds)))
        return __Pyx_ParseKeywordsTuple(kwds, kwvalues, argnames, kwds2, values, num_pos_args, num_kwargs, function_name, ignore_unknown_kwargs);
    else if (kwds2)
        return __Pyx_ParseKeywordDictToDict(kwds, argnames, kwds2, values, num_pos_args, function_name);
    else
        return __Pyx_ParseKeywordDict(kwds, argnames, values, num_pos_args, num_kwargs, function_name, ignore_unknown_kwargs);
}

/* RaiseArgTupleInvalid */
static void __Pyx_RaiseArgtupleInvalid(
    const char* func_name,
    int exact,
    Py_ssize_t num_min,
    Py_ssize_t num_max,
    Py_ssize_t num_found)
{
    Py_ssize_t num_expected;
    const char *more_or_less;
    if (num_found < num_min) {
        num_expected = num_min;
        more_or_less = "at least";
    } else {
        num_expected = num_max;
        more_or_less = "at most";
    }
    if (exact) {
        more_or_less = "exactly";
    }
    PyErr_Format(PyExc_TypeError,
                 "%.200s() takes %.8s %" CYTHON_FORMAT_SSIZE_T "d positional argument%.1s (%" CYTHON_FORMAT_SSIZE_T "d given)",
                 func_name, more_or_less, num_expected,
                 (num_expected == 1) ? "" : "s", num_found);
}

/* ArgTypeTest */
static int __Pyx__ArgTypeTest(PyObject *obj, PyTypeObject *type, const char *name, int exact)
{
    __Pyx_TypeName type_name;
    __Pyx_TypeName obj_type_name;
    PyObject *extra_info = __pyx_mstate_global->__pyx_empty_unicode;
    int from_annotation_subclass = 0;
    if (unlikely(!type)) {
        PyErr_SetString(PyExc_SystemError, "Missing type object");
        return 0;
    }
    else if (!exact) {
        if (likely(__Pyx_TypeCheck(obj, type))) return 1;
    } else if (exact == 2) {
        if (__Pyx_TypeCheck(obj, type)) {
            from_annotation_subclass = 1;
            extra_info = __pyx_mstate_global->__pyx_kp_u_Note_that_Cython_is_deliberately;
        }
    }
    type_name = __Pyx_PyType_GetFullyQualifiedName(type);
    obj_type_name = __Pyx_PyType_GetFullyQualifiedName(Py_TYPE(obj));
    PyErr_Format(PyExc_TypeError,
        "Argument '%.200s' has incorrect type (expected " __Pyx_FMT_TYPENAME
        ", got " __Pyx_FMT_TYPENAME ")"
#if __PYX_LIMITED_VERSION_HEX < 0x030C0000
        "%s%U"
#endif
        , name, type_name, obj_type_name
#if __PYX_LIMITED_VERSION_HEX < 0x030C0000
        , (from_annotation_subclass ? ". " : ""), extra_info
#endif
        );
#if __PYX_LIMITED_VERSION_HEX >= 0x030C0000
    if (exact == 2 && from_annotation_subclass) {
        PyObject *res;
        PyObject *vargs[2];
        vargs[0] = PyErr_GetRaisedException();
        vargs[1] = extra_info;
        res = PyObject_VectorcallMethod(__pyx_mstate_global->__pyx_kp_u_add_note, vargs, 2, NULL);
        Py_XDECREF(res);
        PyErr_SetRaisedException(vargs[0]);
    }
#endif
    __Pyx_DECREF_TypeName(type_name);
    __Pyx_DECREF_TypeName(obj_type_name);
    return 0;
}

/* PyDictVersioning */
#if CYTHON_USE_DICT_VERSIONS && CYTHON_USE_TYPE_SLOTS
static CYTHON_INLINE PY_UINT64_T __Pyx_get_tp_dict_version(PyObject *obj) {
    PyObject *dict = Py_TYPE(obj)->tp_dict;
    return likely(dict) ? __PYX_GET_DICT_VERSION(dict) : 0;
}
static CYTHON_INLINE PY_UINT64_T __Pyx_get_object_dict_version(PyObject *obj) {
    PyObject **dictptr = NULL;
    Py_ssize_t offset = Py_TYPE(obj)->tp_dictoffset;
    if (offset) {
#if CYTHON_COMPILING_IN_CPYTHON
        dictptr = (likely(offset > 0)) ? (PyObject **) ((char *)obj + offset) : _PyObject_GetDictPtr(obj);
#else
        dictptr = _PyObject_GetDictPtr(obj);
#endif
    }
    return (dictptr && *dictptr) ? __PYX_GET_DICT_VERSION(*dictptr) : 0;
}
static CYTHON_INLINE int __Pyx_object_dict_version_matches(PyObject* obj, PY_UINT64_T tp_dict_version, PY_UINT64_T obj_dict_version) {
    PyObject *dict = Py_TYPE(obj)->tp_dict;
    if (unlikely(!dict) || unlikely(tp_dict_version != __PYX_GET_DICT_VERSION(dict)))
        return 0;
    return obj_dict_version == __Pyx_get_object_dict_version(obj);
}
#endif

/* GetModuleGlobalName */
#if CYTHON_USE_DICT_VERSIONS
static PyObject *__Pyx__GetModuleGlobalName(PyObject *name, PY_UINT64_T *dict_version, PyObject **dict_cached_value)
#else
static CYTHON_INLINE PyObject *__Pyx__GetModuleGlobalName(PyObject *name)
#endif
{
    PyObject *result;
#if CYTHON_COMPILING_IN_LIMITED_API
    if (unlikely(!__pyx_m)) {
        if (!PyErr_Occurred())
            PyErr_SetNone(PyExc_NameError);
        return NULL;
    }
    result = PyObject_GetAttr(__pyx_m, name);
    if (likely(result)) {
        return result;
    }
    PyErr_Clear();
#elif CYTHON_AVOID_BORROWED_REFS || CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS
    if (unlikely(__Pyx_PyDict_GetItemRef(__pyx_mstate_global->__pyx_d, name, &result) == -1)) PyErr_Clear();
    __PYX_UPDATE_DICT_CACHE(__pyx_mstate_global->__pyx_d, result, *dict_cached_value, *dict_version)
    if (likely(result)) {
        return result;
    }
#else
    result = _PyDict_GetItem_KnownHash(__pyx_mstate_global->__pyx_d, name, ((PyASCIIObject *) name)->hash);
    __PYX_UPDATE_DICT_CACHE(__pyx_mstate_global->__pyx_d, result, *dict_cached_value, *dict_version)
    if (likely(result)) {
        return __Pyx_NewRef(result);
    }
    PyErr_Clear();
#endif
    return __Pyx_GetBuiltinName(name);
}

/* PyObjectSetAttrStr */
#if CYTHON_USE_TYPE_SLOTS
static CYTHON_INLINE int __Pyx_PyObject_SetAttrStr(PyObject* obj, PyObject* attr_name, PyObject* value) {
    PyTypeObject* tp = Py_TYPE(obj);
    if (likely(tp->tp_setattro))
        return tp->tp_setattro(obj, attr_name, value);
    return PyObject_SetAttr(obj, attr_name, value);
}
#endif

/* PyObjectCallNoArg */
static CYTHON_INLINE PyObject* __Pyx_PyObject_CallNoArg(PyObject *func) {
    PyObject *arg[2] = {NULL, NULL};
    return __Pyx_PyObject_FastCall(func, arg + 1, 0 | __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET);
}

/* PyUnicode_Unicode */
static CYTHON_INLINE PyObject* __Pyx_PyUnicode_Unicode(PyObject *obj) {
    if (unlikely(obj == Py_None))
        obj = __pyx_mstate_global->__pyx_kp_u_None;
    return __Pyx_NewRef(obj);
}

/* JoinPyUnicode */
static PyObject* __Pyx_PyUnicode_Join(PyObject** values, Py_ssize_t value_count, Py_ssize_t result_ulength,
                                      Py_UCS4 max_char) {
#if CYTHON_USE_UNICODE_INTERNALS && CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
    PyObject *result_uval;
    int result_ukind, kind_shift;
    Py_ssize_t i, char_pos;
    void *result_udata;
    if (max_char > 1114111) max_char = 1114111;
    result_uval = PyUnicode_New(result_ulength, max_char);
    if (unlikely(!result_uval)) return NULL;
    result_ukind = (max_char <= 255) ? PyUnicode_1BYTE_KIND : (max_char <= 65535) ? PyUnicode_2BYTE_KIND : PyUnicode_4BYTE_KIND;
    kind_shift = (result_ukind == PyUnicode_4BYTE_KIND) ? 2 : result_ukind - 1;
    result_udata = PyUnicode_DATA(result_uval);
    assert(kind_shift == 2 || kind_shift == 1 || kind_shift == 0);
    if (unlikely((PY_SSIZE_T_MAX >> kind_shift) - result_ulength < 0))
        goto overflow;
    char_pos = 0;
    for (i=0; i < value_count; i++) {
        int ukind;
        Py_ssize_t ulength;
        void *udata;
        PyObject *uval = values[i];
        #if !CYTHON_COMPILING_IN_LIMITED_API
        if (__Pyx_PyUnicode_READY(uval) == (-1))
            goto bad;
        #endif
        ulength = __Pyx_PyUnicode_GET_LENGTH(uval);
        #if !CYTHON_ASSUME_SAFE_SIZE
        if (unlikely(ulength < 0)) goto bad;
        #endif
        if (unlikely(!ulength))
            continue;
        if (unlikely((PY_SSIZE_T_MAX >> kind_shift) - ulength < char_pos))
            goto overflow;
        ukind = __Pyx_PyUnicode_KIND(uval);
        udata = __Pyx_PyUnicode_DATA(uval);
        if (ukind == result_ukind) {
            memcpy((char *)result_udata + (char_pos << kind_shift), udata, (size_t) (ulength << kind_shift));
        } else {
            #if PY_VERSION_HEX >= 0x030d0000
            if (unlikely(PyUnicode_CopyCharacters(result_uval, char_pos, uval, 0, ulength) < 0)) goto bad;
            #elif CYTHON_COMPILING_IN_CPYTHON || defined(_PyUnicode_FastCopyCharacters)
            _PyUnicode_FastCopyCharacters(result_uval, char_pos, uval, 0, ulength);
            #else
            Py_ssize_t j;
            for (j=0; j < ulength; j++) {
                Py_UCS4 uchar = __Pyx_PyUnicode_READ(ukind, udata, j);
                __Pyx_PyUnicode_WRITE(result_ukind, result_udata, char_pos+j, uchar);
            }
            #endif
        }
        char_pos += ulength;
    }
    return result_uval;
overflow:
    PyErr_SetString(PyExc_OverflowError, "join() result is too long for a Python string");
bad:
    Py_DECREF(result_uval);
    return NULL;
#else
    Py_ssize_t i;
    PyObject *result = NULL;
    PyObject *value_tuple = PyTuple_New(value_count);
    if (unlikely(!value_tuple)) return NULL;
    CYTHON_UNUSED_VAR(max_char);
    CYTHON_UNUSED_VAR(result_ulength);
    for (i=0; i<value_count; i++) {
        if (__Pyx_PyTuple_SET_ITEM(value_tuple, i, values[i]) != (0)) goto bad;
        Py_INCREF(values[i]);
    }
    result = PyUnicode_Join(__pyx_mstate_global->__pyx_empty_unicode, value_tuple);
bad:
    Py_DECREF(value_tuple);
    return result;
#endif
}

/* RaiseTooManyValuesToUnpack */
static CYTHON_INLINE void __Pyx_RaiseTooManyValuesError(Py_ssize_t expected) {
    PyErr_Format(PyExc_ValueError,
                 "too many values to unpack (expected %" CYTHON_FORMAT_SSIZE_T "d)", expected);
}

/* RaiseNeedMoreValuesToUnpack */
static CYTHON_INLINE void __Pyx_RaiseNeedMoreValuesError(Py_ssize_t index) {
    PyErr_Format(PyExc_ValueError,
                 "need more than %" CYTHON_FORMAT_SSIZE_T "d value%.1s to unpack",
                 index, (index == 1) ? "" : "s");
}

/* PyObjectFastCallMethod */
#if !CYTHON_VECTORCALL || PY_VERSION_HEX < 0x03090000
static PyObject *__Pyx_PyObject_FastCallMethod(PyObject *name, PyObject *const *args, size_t nargsf) {
    PyObject *result;
    PyObject *attr = PyObject_GetAttr(args[0], name);
    if (unlikely(!attr))
        return NULL;
    result = __Pyx_PyObject_FastCall(attr, args+1, nargsf - 1);
    Py_DECREF(attr);
    return result;
}
#endif

/* RaiseException */
static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb, PyObject *cause) {
    PyObject* owned_instance = NULL;
    if (tb == Py_None) {
        tb = 0;
    } else if (tb && !PyTraceBack_Check(tb)) {
        PyErr_SetString(PyExc_TypeError,
            "raise: arg 3 must be a traceback or None");
        goto bad;
    }
    if (value == Py_None)
        value = 0;
    if (PyExceptionInstance_Check(type)) {
        if (value) {
            PyErr_SetString(PyExc_TypeError,
                "instance exception may not have a separate value");
            goto bad;
        }
        value = type;
        type = (PyObject*) Py_TYPE(value);
    } else if (PyExceptionClass_Check(type)) {
        PyObject *instance_class = NULL;
        if (value && PyExceptionInstance_Check(value)) {
            instance_class = (PyObject*) Py_TYPE(value);
            if (instance_class != type) {
                int is_subclass = PyObject_IsSubclass(instance_class, type);
                if (!is_subclass) {
                    instance_class = NULL;
                } else if (unlikely(is_subclass == -1)) {
                    goto bad;
                } else {
                    type = instance_class;
                }
            }
        }
        if (!instance_class) {
            PyObject *args;
            if (!value)
                args = PyTuple_New(0);
            else if (PyTuple_Check(value)) {
                Py_INCREF(value);
                args = value;
            } else
                args = PyTuple_Pack(1, value);
            if (!args)
                goto bad;
            owned_instance = PyObject_Call(type, args, NULL);
            Py_DECREF(args);
            if (!owned_instance)
                goto bad;
            value = owned_instance;
            if (!PyExceptionInstance_Check(value)) {
                PyErr_Format(PyExc_TypeError,
                             "calling %R should have returned an instance of "
                             "BaseException, not %R",
                             type, Py_TYPE(value));
                goto bad;
            }
        }
    } else {
        PyErr_SetString(PyExc_TypeError,
            "raise: exception class must be a subclass of BaseException");
        goto bad;
    }
    if (cause) {
        PyObject *fixed_cause;
        if (cause == Py_None) {
            fixed_cause = NULL;
        } else if (PyExceptionClass_Check(cause)) {
            fixed_cause = PyObject_CallObject(cause, NULL);
            if (fixed_cause == NULL)
                goto bad;
        } else if (PyExceptionInstance_Check(cause)) {
            fixed_cause = cause;
            Py_INCREF(fixed_cause);
        } else {
            PyErr_SetString(PyExc_TypeError,
                            "exception causes must derive from "
                            "BaseException");
            goto bad;
        }
        PyException_SetCause(value, fixed_cause);
    }
    PyErr_SetObject(type, value);
    if (tb) {
#if PY_VERSION_HEX >= 0x030C00A6
        PyException_SetTraceback(value, tb);
#elif CYTHON_FAST_THREAD_STATE
        PyThreadState *tstate = __Pyx_PyThreadState_Current;
        PyObject* tmp_tb = tstate->curexc_traceback;
        if (tb != tmp_tb) {
            Py_INCREF(tb);
            tstate->curexc_traceback = tb;
            Py_XDECREF(tmp_tb);
        }
#else
        PyObject *tmp_type, *tmp_value, *tmp_tb;
        PyErr_Fetch(&tmp_type, &tmp_value, &tmp_tb);
        Py_INCREF(tb);
        PyErr_Restore(tmp_type, tmp_value, tb);
        Py_XDECREF(tmp_tb);
#endif
    }
bad:
    Py_XDECREF(owned_instance);
    return;
}

/* DictGetItem */
#if !CYTHON_COMPILING_IN_PYPY
static PyObject *__Pyx_PyDict_GetItem(PyObject *d, PyObject* key) {
    PyObject *value;
    if (unlikely(__Pyx_PyDict_GetItemRef(d, key, &value) == 0)) { // no value, no error
        if (unlikely(PyTuple_Check(key))) {
            PyObject* args = PyTuple_Pack(1, key);
            if (likely(args)) {
                PyErr_SetObject(PyExc_KeyError, args);
                Py_DECREF(args);
            }
        } else {
            PyErr_SetObject(PyExc_KeyError, key);
        }
    }
    return value;
}
#endif

/* PyLongBinop */
#if !CYTHON_COMPILING_IN_PYPY
static PyObject* __Pyx_Fallback___Pyx_PyLong_MultiplyObjC(PyObject *op1, PyObject *op2, int inplace) {
    return (inplace ? PyNumber_InPlaceMultiply : PyNumber_Multiply)(op1, op2);
}
#if CYTHON_USE_PYLONG_INTERNALS
static PyObject* __Pyx_Unpacked___Pyx_PyLong_MultiplyObjC(PyObject *op1, PyObject *op2, long intval, int inplace, int zerodivision_check) {
    CYTHON_MAYBE_UNUSED_VAR(inplace);
    CYTHON_UNUSED_VAR(zerodivision_check);
    const long b = intval;
    long a, x;
#ifdef HAVE_LONG_LONG
    const PY_LONG_LONG llb = intval;
    PY_LONG_LONG lla, llx;
#endif
    if (unlikely(__Pyx_PyLong_IsZero(op1))) {
        return __Pyx_NewRef(op1);
    }
    if (likely(__Pyx_PyLong_IsCompact(op1))) {
        a = __Pyx_PyLong_CompactValue(op1);
    } else {
        const digit* digits = __Pyx_PyLong_Digits(op1);
        const Py_ssize_t size = __Pyx_PyLong_SignedDigitCount(op1);
        switch (size) {
            case -2:
                if (8 * sizeof(long) - 1 > 2 * PyLong_SHIFT+30) {
                    a = -(long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]));
                    break;
                #ifdef HAVE_LONG_LONG
                } else if (8 * sizeof(PY_LONG_LONG) - 1 > 2 * PyLong_SHIFT+30) {
                    lla = -(PY_LONG_LONG) (((((unsigned PY_LONG_LONG)digits[1]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[0]));
                    goto long_long;
                #endif
                }
                CYTHON_FALLTHROUGH;
            case 2:
                if (8 * sizeof(long) - 1 > 2 * PyLong_SHIFT+30) {
                    a = (long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]));
                    break;
                #ifdef HAVE_LONG_LONG
                } else if (8 * sizeof(PY_LONG_LONG) - 1 > 2 * PyLong_SHIFT+30) {
                    lla = (PY_LONG_LONG) (((((unsigned PY_LONG_LONG)digits[1]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[0]));
                    goto long_long;
                #endif
                }
                CYTHON_FALLTHROUGH;
            case -3:
                if (8 * sizeof(long) - 1 > 3 * PyLong_SHIFT+30) {
                    a = -(long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]));
                    break;
                #ifdef HAVE_LONG_LONG
                } else if (8 * sizeof(PY_LONG_LONG) - 1 > 3 * PyLong_SHIFT+30) {
                    lla = -(PY_LONG_LONG) (((((((unsigned PY_LONG_LONG)digits[2]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[1]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[0]));
                    goto long_long;
                #endif
                }
                CYTHON_FALLTHROUGH;
            case 3:
                if (8 * sizeof(long) - 1 > 3 * PyLong_SHIFT+30) {
                    a = (long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]));
                    break;
                #ifdef HAVE_LONG_LONG
                } else if (8 * sizeof(PY_LONG_LONG) - 1 > 3 * PyLong_SHIFT+30) {
                    lla = (PY_LONG_LONG) (((((((unsigned PY_LONG_LONG)digits[2]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[1]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[0]));
                    goto long_long;
                #endif
                }
                CYTHON_FALLTHROUGH;
            case -4:
                if (8 * sizeof(long) - 1 > 4 * PyLong_SHIFT+30) {
                    a = -(long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]));
                    break;
                #ifdef HAVE_LONG_LONG
                } else if (8 * sizeof(PY_LONG_LONG) - 1 > 4 * PyLong_SHIFT+30) {
                    lla = -(PY_LONG_LONG) (((((((((unsigned PY_LONG_LONG)digits[3]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[2]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[1]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[0]));
                    goto long_long;
                #endif
                }
                CYTHON_FALLTHROUGH;
            case 4:
                if (8 * sizeof(long) - 1 > 4 * PyLong_SHIFT+30) {
                    a = (long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]));
                    break;
                #ifdef HAVE_LONG_LONG
                } else if (8 * sizeof(PY_LONG_LONG) - 1 > 4 * PyLong_SHIFT+30) {
                    lla = (PY_LONG_LONG) (((((((((unsigned PY_LONG_LONG)digits[3]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[2]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[1]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[0]));
                    goto long_long;
                #endif
                }
                CYTHON_FALLTHROUGH;
            default: return PyLong_Type.tp_as_number->nb_multiply(op1, op2);
        }
    }
            CYTHON_UNUSED_VAR(a);
            CYTHON_UNUSED_VAR(b);
            #ifdef HAVE_LONG_LONG
            lla = a;
            goto long_long;
            #else
            return PyLong_Type.tp_as_number->nb_multiply(op1, op2);
            #endif
        return PyLong_FromLong(x);
#ifdef HAVE_LONG_LONG
    long_long:
            llx = lla * llb;
        return PyLong_FromLongLong(llx);
#endif
    return __Pyx_Fallback___Pyx_PyLong_MultiplyObjC(op1, op2, inplace);
    
    
}
#endif
static PyObject* __Pyx_Float___Pyx_PyLong_MultiplyObjC(PyObject *float_val, long intval, int zerodivision_check) {
    CYTHON_UNUSED_VAR(zerodivision_check);
    const long b = intval;
    double a = __Pyx_PyFloat_AS_DOUBLE(float_val);
        double result;
        
        result = ((double)a) * (double)b;
        return PyFloat_FromDouble(result);
}
static CYTHON_INLINE PyObject* __Pyx_PyLong_MultiplyObjC(PyObject *op1, PyObject *op2, long intval, int inplace, int zerodivision_check) {
    CYTHON_MAYBE_UNUSED_VAR(intval);
    CYTHON_UNUSED_VAR(zerodivision_check);
    #if CYTHON_USE_PYLONG_INTERNALS
    if (likely(PyLong_CheckExact(op1))) {
        return __Pyx_Unpacked___Pyx_PyLong_MultiplyObjC(op1, op2, intval, inplace, zerodivision_check);
    }
    #endif
    if (PyFloat_CheckExact(op1)) {
        return __Pyx_Float___Pyx_PyLong_MultiplyObjC(op1, intval, zerodivision_check);
    }
    return __Pyx_Fallback___Pyx_PyLong_MultiplyObjC(op1, op2, inplace);
}
#endif

/* GetTopmostException */
#if CYTHON_USE_EXC_INFO_STACK && CYTHON_FAST_THREAD_STATE
static _PyErr_StackItem *
__Pyx_PyErr_GetTopmostException(PyThreadState *tstate)
{
    _PyErr_StackItem *exc_info = tstate->exc_info;
    while ((exc_info->exc_value == NULL || exc_info->exc_value == Py_None) &&
           exc_info->previous_item != NULL)
    {
        exc_info = exc_info->previous_item;
    }
    return exc_info;
}
#endif

/* SaveResetException */
#if CYTHON_FAST_THREAD_STATE
static CYTHON_INLINE void __Pyx__ExceptionSave(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb) {
  #if CYTHON_USE_EXC_INFO_STACK && PY_VERSION_HEX >= 0x030B00a4
    _PyErr_StackItem *exc_info = __Pyx_PyErr_GetTopmostException(tstate);
    PyObject *exc_value = exc_info->exc_value;
    if (exc_value == NULL || exc_value == Py_None) {
        *value = NULL;
        *type = NULL;
        *tb = NULL;
    } else {
        *value = exc_value;
        Py_INCREF(*value);
        *type = (PyObject*) Py_TYPE(exc_value);
        Py_INCREF(*type);
        *tb = PyException_GetTraceback(exc_value);
    }
  #elif CYTHON_USE_EXC_INFO_STACK
    _PyErr_StackItem *exc_info = __Pyx_PyErr_GetTopmostException(tstate);
    *type = exc_info->exc_type;
    *value = exc_info->exc_value;
    *tb = exc_info->exc_traceback;
    Py_XINCREF(*type);
    Py_XINCREF(*value);
    Py_XINCREF(*tb);
  #else
    *type = tstate->exc_type;
    *value = tstate->exc_value;
    *tb = tstate->exc_traceback;
    Py_XINCREF(*type);
    Py_XINCREF(*value);
    Py_XINCREF(*tb);
  #endif
}
static CYTHON_INLINE void __Pyx__ExceptionReset(PyThreadState *tstate, PyObject *type, PyObject *value, PyObject *tb) {
  #if CYTHON_USE_EXC_INFO_STACK && PY_VERSION_HEX >= 0x030B00a4
    _PyErr_StackItem *exc_info = tstate->exc_info;
    PyObject *tmp_value = exc_info->exc_value;
    exc_info->exc_value = value;
    Py_XDECREF(tmp_value);
    Py_XDECREF(type);
    Py_XDECREF(tb);
  #else
    PyObject *tmp_type, *tmp_value, *tmp_tb;
    #if CYTHON_USE_EXC_INFO_STACK
    _PyErr_StackItem *exc_info = tstate->exc_info;
    tmp_type = exc_info->exc_type;
    tmp_value = exc_info->exc_value;
    tmp_tb = exc_info->exc_traceback;
    exc_info->exc_type = type;
    exc_info->exc_value = value;
    exc_info->exc_traceback = tb;
    #else
    tmp_type = tstate->exc_type;
    tmp_value = tstate->exc_value;
    tmp_tb = tstate->exc_traceback;
    tstate->exc_type = type;
    tstate->exc_value = value;
    tstate->exc_traceback = tb;
    #endif
    Py_XDECREF(tmp_type);
    Py_XDECREF(tmp_value);
    Py_XDECREF(tmp_tb);
  #endif
}
#endif

/* GetException */
#if CYTHON_FAST_THREAD_STATE
static int __Pyx__GetException(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb)
#else
static int __Pyx_GetException(PyObject **type, PyObject **value, PyObject **tb)
#endif
{
    PyObject *local_type = NULL, *local_value, *local_tb = NULL;
#if CYTHON_FAST_THREAD_STATE
    PyObject *tmp_type, *tmp_value, *tmp_tb;
  #if PY_VERSION_HEX >= 0x030C0000
    local_value = tstate->current_exception;
    tstate->current_exception = 0;
  #else
    local_type = tstate->curexc_type;
    local_value = tstate->curexc_value;
    local_tb = tstate->curexc_traceback;
    tstate->curexc_type = 0;
    tstate->curexc_value = 0;
    tstate->curexc_traceback = 0;
  #endif
#elif __PYX_LIMITED_VERSION_HEX > 0x030C0000
    local_value = PyErr_GetRaisedException();
#else
    PyErr_Fetch(&local_type, &local_value, &local_tb);
#endif
#if __PYX_LIMITED_VERSION_HEX > 0x030C0000
    if (likely(local_value)) {
        local_type = (PyObject*) Py_TYPE(local_value);
        Py_INCREF(local_type);
        local_tb = PyException_GetTraceback(local_value);
    }
#else
    PyErr_NormalizeException(&local_type, &local_value, &local_tb);
#if CYTHON_FAST_THREAD_STATE
    if (unlikely(tstate->curexc_type))
#else
    if (unlikely(PyErr_Occurred()))
#endif
        goto bad;
    if (local_tb) {
        if (unlikely(PyException_SetTraceback(local_value, local_tb) < 0))
            goto bad;
    }
#endif // __PYX_LIMITED_VERSION_HEX > 0x030C0000
    Py_XINCREF(local_tb);
    Py_XINCREF(local_type);
    Py_XINCREF(local_value);
    *type = local_type;
    *value = local_value;
    *tb = local_tb;
#if CYTHON_FAST_THREAD_STATE
    #if CYTHON_USE_EXC_INFO_STACK
    {
        _PyErr_StackItem *exc_info = tstate->exc_info;
      #if PY_VERSION_HEX >= 0x030B00a4
        tmp_value = exc_info->exc_value;
        exc_info->exc_value = local_value;
        tmp_type = NULL;
        tmp_tb = NULL;
        Py_XDECREF(local_type);
        Py_XDECREF(local_tb);
      #else
        tmp_type = exc_info->exc_type;
        tmp_value = exc_info->exc_value;
        tmp_tb = exc_info->exc_traceback;
        exc_info->exc_type = local_type;
        exc_info->exc_value = local_value;
        exc_info->exc_traceback = local_tb;
      #endif
    }
    #else
    tmp_type = tstate->exc_type;
    tmp_value = tstate->exc_value;
    tmp_tb = tstate->exc_traceback;
    tstate->exc_type = local_type;
    tstate->exc_value = local_value;
    tstate->exc_traceback = local_tb;
    #endif
    Py_XDECREF(tmp_type);
    Py_XDECREF(tmp_value);
    Py_XDECREF(tmp_tb);
#elif __PYX_LIMITED_VERSION_HEX >= 0x030b0000
    PyErr_SetHandledException(local_value);
    Py_XDECREF(local_value);
    Py_XDECREF(local_type);
    Py_XDECREF(local_tb);
#else
    PyErr_SetExcInfo(local_type, local_value, local_tb);
#endif
    return 0;
#if __PYX_LIMITED_VERSION_HEX <= 0x030C0000
bad:
    *type = 0;
    *value = 0;
    *tb = 0;
    Py_XDECREF(local_type);
    Py_XDECREF(local_value);
    Py_XDECREF(local_tb);
    return -1;
#endif
}

/* RaiseUnexpectedTypeError */
static int
__Pyx_RaiseUnexpectedTypeError(const char *expected, PyObject *obj)
{
    __Pyx_TypeName obj_type_name = __Pyx_PyType_GetFullyQualifiedName(Py_TYPE(obj));
    PyErr_Format(PyExc_TypeError, "Expected %s, got " __Pyx_FMT_TYPENAME,
                 expected, obj_type_name);
    __Pyx_DECREF_TypeName(obj_type_name);
    return 0;
}

/* GetItemInt */
static PyObject *__Pyx_GetItemInt_Generic(PyObject *o, PyObject* j) {
    PyObject *r;
    if (unlikely(!j)) return NULL;
    r = PyObject_GetItem(o, j);
    Py_DECREF(j);
    return r;
}
static CYTHON_INLINE PyObject *__Pyx_GetItemInt_List_Fast(PyObject *o, Py_ssize_t i,
                                                              CYTHON_NCP_UNUSED int wraparound,
                                                              CYTHON_NCP_UNUSED int boundscheck) {
#if CYTHON_ASSUME_SAFE_MACROS && CYTHON_ASSUME_SAFE_SIZE && !CYTHON_AVOID_BORROWED_REFS && !CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS
    Py_ssize_t wrapped_i = i;
    if (wraparound & unlikely(i < 0)) {
        wrapped_i += PyList_GET_SIZE(o);
    }
    if ((!boundscheck) || likely(__Pyx_is_valid_index(wrapped_i, PyList_GET_SIZE(o)))) {
        PyObject *r = PyList_GET_ITEM(o, wrapped_i);
        Py_INCREF(r);
        return r;
    }
    return __Pyx_GetItemInt_Generic(o, PyLong_FromSsize_t(i));
#else
    return PySequence_GetItem(o, i);
#endif
}
static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Tuple_Fast(PyObject *o, Py_ssize_t i,
                                                              CYTHON_NCP_UNUSED int wraparound,
                                                              CYTHON_NCP_UNUSED int boundscheck) {
#if CYTHON_ASSUME_SAFE_MACROS && CYTHON_ASSUME_SAFE_SIZE && !CYTHON_AVOID_BORROWED_REFS
    Py_ssize_t wrapped_i = i;
    if (wraparound & unlikely(i < 0)) {
        wrapped_i += PyTuple_GET_SIZE(o);
    }
    if ((!boundscheck) || likely(__Pyx_is_valid_index(wrapped_i, PyTuple_GET_SIZE(o)))) {
        PyObject *r = PyTuple_GET_ITEM(o, wrapped_i);
        Py_INCREF(r);
        return r;
    }
    return __Pyx_GetItemInt_Generic(o, PyLong_FromSsize_t(i));
#else
    return PySequence_GetItem(o, i);
#endif
}
static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Fast(PyObject *o, Py_ssize_t i, int is_list,
                                                     CYTHON_NCP_UNUSED int wraparound,
                                                     CYTHON_NCP_UNUSED int boundscheck) {
#if CYTHON_ASSUME_SAFE_MACROS && CYTHON_ASSUME_SAFE_SIZE && !CYTHON_AVOID_BORROWED_REFS && CYTHON_USE_TYPE_SLOTS
    if (is_list || PyList_CheckExact(o)) {
        Py_ssize_t n = ((!wraparound) | likely(i >= 0)) ? i : i + PyList_GET_SIZE(o);
        if ((!boundscheck) || (likely(__Pyx_is_valid_index(n, PyList_GET_SIZE(o))))) {
            return __Pyx_PyList_GetItemRef(o, n);
        }
    }
    else if (PyTuple_CheckExact(o)) {
        Py_ssize_t n = ((!wraparound) | likely(i >= 0)) ? i : i + PyTuple_GET_SIZE(o);
        if ((!boundscheck) || likely(__Pyx_is_valid_index(n, PyTuple_GET_SIZE(o)))) {
            PyObject *r = PyTuple_GET_ITEM(o, n);
            Py_INCREF(r);
            return r;
        }
    } else {
        PyMappingMethods *mm = Py_TYPE(o)->tp_as_mapping;
        PySequenceMethods *sm = Py_TYPE(o)->tp_as_sequence;
        if (mm && mm->mp_subscript) {
            PyObject *r, *key = PyLong_FromSsize_t(i);
            if (unlikely(!key)) return NULL;
            r = mm->mp_subscript(o, key);
            Py_DECREF(key);
            return r;
        }
        if (likely(sm && sm->sq_item)) {
            if (wraparound && unlikely(i < 0) && likely(sm->sq_length)) {
                Py_ssize_t l = sm->sq_length(o);
                if (likely(l >= 0)) {
                    i += l;
                } else {
                    if (!PyErr_ExceptionMatches(PyExc_OverflowError))
                        return NULL;
                    PyErr_Clear();
                }
            }
            return sm->sq_item(o, i);
        }
    }
#else
    if (is_list || !PyMapping_Check(o)) {
        return PySequence_GetItem(o, i);
    }
#endif
    return __Pyx_GetItemInt_Generic(o, PyLong_FromSsize_t(i));
}

/* IterFinish */
static CYTHON_INLINE int __Pyx_IterFinish(void) {
    PyObject* exc_type;
    __Pyx_PyThreadState_declare
    __Pyx_PyThreadState_assign
    exc_type = __Pyx_PyErr_CurrentExceptionType();
    if (unlikely(exc_type)) {
        if (unlikely(!__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration)))
            return -1;
        __Pyx_PyErr_Clear();
        return 0;
    }
    return 0;
}

/* PyObjectCallOneArg */
static CYTHON_INLINE PyObject* __Pyx_PyObject_CallOneArg(PyObject *func, PyObject *arg) {
    PyObject *args[2] = {NULL, arg};
    return __Pyx_PyObject_FastCall(func, args+1, 1 | __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET);
}

/* PyObjectGetMethod */
static int __Pyx_PyObject_GetMethod(PyObject *obj, PyObject *name, PyObject **method) {
    PyObject *attr;
#if CYTHON_UNPACK_METHODS && CYTHON_COMPILING_IN_CPYTHON && CYTHON_USE_PYTYPE_LOOKUP
    __Pyx_TypeName type_name;
    PyTypeObject *tp = Py_TYPE(obj);
    PyObject *descr;
    descrgetfunc f = NULL;
    PyObject **dictptr, *dict;
    int meth_found = 0;
    assert (*method == NULL);
    if (unlikely(tp->tp_getattro != PyObject_GenericGetAttr)) {
        attr = __Pyx_PyObject_GetAttrStr(obj, name);
        goto try_unpack;
    }
    if (unlikely(tp->tp_dict == NULL) && unlikely(PyType_Ready(tp) < 0)) {
        return 0;
    }
    descr = _PyType_Lookup(tp, name);
    if (likely(descr != NULL)) {
        Py_INCREF(descr);
#if defined(Py_TPFLAGS_METHOD_DESCRIPTOR) && Py_TPFLAGS_METHOD_DESCRIPTOR
        if (__Pyx_PyType_HasFeature(Py_TYPE(descr), Py_TPFLAGS_METHOD_DESCRIPTOR))
#else
        #ifdef __Pyx_CyFunction_USED
        if (likely(PyFunction_Check(descr) || __Pyx_IS_TYPE(descr, &PyMethodDescr_Type) || __Pyx_CyFunction_Check(descr)))
        #else
        if (likely(PyFunction_Check(descr) || __Pyx_IS_TYPE(descr, &PyMethodDescr_Type)))
        #endif
#endif
        {
            meth_found = 1;
        } else {
            f = Py_TYPE(descr)->tp_descr_get;
            if (f != NULL && PyDescr_IsData(descr)) {
                attr = f(descr, obj, (PyObject *)Py_TYPE(obj));
                Py_DECREF(descr);
                goto try_unpack;
            }
        }
    }
    dictptr = _PyObject_GetDictPtr(obj);
    if (dictptr != NULL && (dict = *dictptr) != NULL) {
        Py_INCREF(dict);
        attr = __Pyx_PyDict_GetItemStr(dict, name);
        if (attr != NULL) {
            Py_INCREF(attr);
            Py_DECREF(dict);
            Py_XDECREF(descr);
            goto try_unpack;
        }
        Py_DECREF(dict);
    }
    if (meth_found) {
        *method = descr;
        return 1;
    }
    if (f != NULL) {
        attr = f(descr, obj, (PyObject *)Py_TYPE(obj));
        Py_DECREF(descr);
        goto try_unpack;
    }
    if (likely(descr != NULL)) {
        *method = descr;
        return 0;
    }
    type_name = __Pyx_PyType_GetFullyQualifiedName(tp);
    PyErr_Format(PyExc_AttributeError,
                 "'" __Pyx_FMT_TYPENAME "' object has no attribute '%U'",
                 type_name, name);
    __Pyx_DECREF_TypeName(type_name);
    return 0;
#else
    attr = __Pyx_PyObject_GetAttrStr(obj, name);
    goto try_unpack;
#endif
try_unpack:
#if CYTHON_UNPACK_METHODS
    if (likely(attr) && PyMethod_Check(attr) && likely(PyMethod_GET_SELF(attr) == obj)) {
        PyObject *function = PyMethod_GET_FUNCTION(attr);
        Py_INCREF(function);
        Py_DECREF(attr);
        *method = function;
        return 1;
    }
#endif
    *method = attr;
    return 0;
}

/* PyObjectCallMethod0 */
static PyObject* __Pyx_PyObject_CallMethod0(PyObject* obj, PyObject* method_name) {
    PyObject *method = NULL, *result = NULL;
    int is_method = __Pyx_PyObject_GetMethod(obj, method_name, &method);
    if (likely(is_method)) {
        result = __Pyx_PyObject_CallOneArg(method, obj);
        Py_DECREF(method);
        return result;
    }
    if (unlikely(!method)) goto bad;
    result = __Pyx_PyObject_CallNoArg(method);
    Py_DECREF(method);
bad:
    return result;
}

/* UnpackItemEndCheck */
static int __Pyx_IternextUnpackEndCheck(PyObject *retval, Py_ssize_t expected) {
    if (unlikely(retval)) {
        Py_DECREF(retval);
        __Pyx_RaiseTooManyValuesError(expected);
        return -1;
    }
    return __Pyx_IterFinish();
}

/* RaiseNoneIterError */
static CYTHON_INLINE void __Pyx_RaiseNoneNotIterableError(void) {
    PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable");
}

/* UnpackTupleError */
static void __Pyx_UnpackTupleError(PyObject *t, Py_ssize_t index) {
    if (t == Py_None) {
      __Pyx_RaiseNoneNotIterableError();
    } else {
      Py_ssize_t size = __Pyx_PyTuple_GET_SIZE(t);
 #if !CYTHON_ASSUME_SAFE_SIZE
      if (unlikely(size < 0)) return;
 #endif
      if (size < index) {
        __Pyx_RaiseNeedMoreValuesError(size);
      } else {
        __Pyx_RaiseTooManyValuesError(index);
      }
    }
}

/* UnpackTuple2 */
static CYTHON_INLINE int __Pyx_unpack_tuple2(
        PyObject* tuple, PyObject** value1, PyObject** value2, int is_tuple, int has_known_size, int decref_tuple) {
    if (likely(is_tuple || PyTuple_Check(tuple))) {
        Py_ssize_t size;
        if (has_known_size) {
            return __Pyx_unpack_tuple2_exact(tuple, value1, value2, decref_tuple);
        }
        size = __Pyx_PyTuple_GET_SIZE(tuple);
        if (likely(size == 2)) {
            return __Pyx_unpack_tuple2_exact(tuple, value1, value2, decref_tuple);
        }
        if (size >= 0) {
            __Pyx_UnpackTupleError(tuple, 2);
        }
        return -1;
    } else {
        return __Pyx_unpack_tuple2_generic(tuple, value1, value2, has_known_size, decref_tuple);
    }
}
static CYTHON_INLINE int __Pyx_unpack_tuple2_exact(
        PyObject* tuple, PyObject** pvalue1, PyObject** pvalue2, int decref_tuple) {
    PyObject *value1 = NULL, *value2 = NULL;
#if CYTHON_AVOID_BORROWED_REFS || !CYTHON_ASSUME_SAFE_MACROS
    value1 = __Pyx_PySequence_ITEM(tuple, 0);  if (unlikely(!value1)) goto bad;
    value2 = __Pyx_PySequence_ITEM(tuple, 1);  if (unlikely(!value2)) goto bad;
#else
    value1 = PyTuple_GET_ITEM(tuple, 0);  Py_INCREF(value1);
    value2 = PyTuple_GET_ITEM(tuple, 1);  Py_INCREF(value2);
#endif
    if (decref_tuple) {
        Py_DECREF(tuple);
    }
    *pvalue1 = value1;
    *pvalue2 = value2;
    return 0;
#if CYTHON_AVOID_BORROWED_REFS || !CYTHON_ASSUME_SAFE_MACROS
bad:
    Py_XDECREF(value1);
    Py_XDECREF(value2);
    if (decref_tuple) { Py_XDECREF(tuple); }
    return -1;
#endif
}
static int __Pyx_unpack_tuple2_generic(PyObject* tuple, PyObject** pvalue1, PyObject** pvalue2,
                                       int has_known_size, int decref_tuple) {
    Py_ssize_t index;
    PyObject *value1 = NULL, *value2 = NULL, *iter = NULL;
    iternextfunc iternext;
    iter = PyObject_GetIter(tuple);
    if (unlikely(!iter)) goto bad;
    if (decref_tuple) { Py_DECREF(tuple); tuple = NULL; }
    iternext = __Pyx_PyObject_GetIterNextFunc(iter);
    value1 = iternext(iter); if (unlikely(!value1)) { index = 0; goto unpacking_failed; }
    value2 = iternext(iter); if (unlikely(!value2)) { index = 1; goto unpacking_failed; }
    if (!has_known_size && unlikely(__Pyx_IternextUnpackEndCheck(iternext(iter), 2))) goto bad;
    Py_DECREF(iter);
    *pvalue1 = value1;
    *pvalue2 = value2;
    return 0;
unpacking_failed:
    if (!has_known_size && __Pyx_IterFinish() == 0)
        __Pyx_RaiseNeedMoreValuesError(index);
bad:
    Py_XDECREF(iter);
    Py_XDECREF(value1);
    Py_XDECREF(value2);
    if (decref_tuple) { Py_XDECREF(tuple); }
    return -1;
}

/* dict_iter */
#if CYTHON_COMPILING_IN_PYPY
#include <string.h>
#endif
static CYTHON_INLINE PyObject* __Pyx_dict_iterator(PyObject* iterable, int is_dict, PyObject* method_name,
                                                   Py_ssize_t* p_orig_length, int* p_source_is_dict) {
    is_dict = is_dict || likely(PyDict_CheckExact(iterable));
    *p_source_is_dict = is_dict;
    if (is_dict) {
#if !CYTHON_COMPILING_IN_PYPY
        *p_orig_length = PyDict_Size(iterable);
        Py_INCREF(iterable);
        return iterable;
#else
        static PyObject *py_items = NULL, *py_keys = NULL, *py_values = NULL;
        PyObject **pp = NULL;
        if (method_name) {
            const char *name = PyUnicode_AsUTF8(method_name);
            if (strcmp(name, "iteritems") == 0) pp = &py_items;
            else if (strcmp(name, "iterkeys") == 0) pp = &py_keys;
            else if (strcmp(name, "itervalues") == 0) pp = &py_values;
            if (pp) {
                if (!*pp) {
                    *pp = PyUnicode_FromString(name + 4);
                    if (!*pp)
                        return NULL;
                }
                method_name = *pp;
            }
        }
#endif
    }
    *p_orig_length = 0;
    if (method_name) {
        PyObject* iter;
        iterable = __Pyx_PyObject_CallMethod0(iterable, method_name);
        if (!iterable)
            return NULL;
#if !CYTHON_COMPILING_IN_PYPY
        if (PyTuple_CheckExact(iterable) || PyList_CheckExact(iterable))
            return iterable;
#endif
        iter = PyObject_GetIter(iterable);
        Py_DECREF(iterable);
        return iter;
    }
    return PyObject_GetIter(iterable);
}
#if !CYTHON_COMPILING_IN_PYPY
static CYTHON_INLINE int __Pyx_dict_iter_next_source_is_dict(
        PyObject* iter_obj, CYTHON_NCP_UNUSED Py_ssize_t orig_length, CYTHON_NCP_UNUSED Py_ssize_t* ppos,
        PyObject** pkey, PyObject** pvalue, PyObject** pitem) {
    PyObject *key, *value;
    if (unlikely(orig_length != PyDict_Size(iter_obj))) {
        PyErr_SetString(PyExc_RuntimeError, "dictionary changed size during iteration");
        return -1;
    }
    if (unlikely(!PyDict_Next(iter_obj, ppos, &key, &value))) {
        return 0;
    }
    if (pitem) {
        PyObject* tuple = PyTuple_New(2);
        if (unlikely(!tuple)) {
            return -1;
        }
        Py_INCREF(key);
        Py_INCREF(value);
        #if CYTHON_ASSUME_SAFE_MACROS
        PyTuple_SET_ITEM(tuple, 0, key);
        PyTuple_SET_ITEM(tuple, 1, value);
        #else
        if (unlikely(PyTuple_SetItem(tuple, 0, key) < 0)) {
            Py_DECREF(value);
            Py_DECREF(tuple);
            return -1;
        }
        if (unlikely(PyTuple_SetItem(tuple, 1, value) < 0)) {
            Py_DECREF(tuple);
            return -1;
        }
        #endif
        *pitem = tuple;
    } else {
        if (pkey) {
            Py_INCREF(key);
            *pkey = key;
        }
        if (pvalue) {
            Py_INCREF(value);
            *pvalue = value;
        }
    }
    return 1;
}
#endif
static CYTHON_INLINE int __Pyx_dict_iter_next(
        PyObject* iter_obj, CYTHON_NCP_UNUSED Py_ssize_t orig_length, CYTHON_NCP_UNUSED Py_ssize_t* ppos,
        PyObject** pkey, PyObject** pvalue, PyObject** pitem, int source_is_dict) {
    PyObject* next_item;
#if !CYTHON_COMPILING_IN_PYPY
    if (source_is_dict) {
        int result;
#if PY_VERSION_HEX >= 0x030d0000 && !CYTHON_COMPILING_IN_LIMITED_API
        Py_BEGIN_CRITICAL_SECTION(iter_obj);
#endif
        result = __Pyx_dict_iter_next_source_is_dict(iter_obj, orig_length, ppos, pkey, pvalue, pitem);
#if PY_VERSION_HEX >= 0x030d0000 && !CYTHON_COMPILING_IN_LIMITED_API
        Py_END_CRITICAL_SECTION();
#endif
        return result;
    } else if (PyTuple_CheckExact(iter_obj)) {
        Py_ssize_t pos = *ppos;
        Py_ssize_t tuple_size = __Pyx_PyTuple_GET_SIZE(iter_obj);
        #if !CYTHON_ASSUME_SAFE_SIZE
        if (unlikely(tuple_size < 0)) return -1;
        #endif
        if (unlikely(pos >= tuple_size)) return 0;
        *ppos = pos + 1;
        #if CYTHON_ASSUME_SAFE_MACROS
        next_item = PyTuple_GET_ITEM(iter_obj, pos);
        #else
        next_item = PyTuple_GetItem(iter_obj, pos);
        if (unlikely(!next_item)) return -1;
        #endif
        Py_INCREF(next_item);
    } else if (PyList_CheckExact(iter_obj)) {
        Py_ssize_t pos = *ppos;
        Py_ssize_t list_size = __Pyx_PyList_GET_SIZE(iter_obj);
        #if !CYTHON_ASSUME_SAFE_SIZE
        if (unlikely(list_size < 0)) return -1;
        #endif
        if (unlikely(pos >= list_size)) return 0;
        *ppos = pos + 1;
        #if CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS
        next_item = PyList_GetItemRef(iter_obj, pos);
        if (unlikely(!next_item)) return -1;
        #elif CYTHON_ASSUME_SAFE_MACROS
        next_item = PyList_GET_ITEM(iter_obj, pos);
        Py_INCREF(next_item);
        #else
        next_item = PyList_GetItem(iter_obj, pos);
        if (unlikely(!next_item)) return -1;
        Py_INCREF(next_item);
        #endif
    } else
#endif
    {
        next_item = PyIter_Next(iter_obj);
        if (unlikely(!next_item)) {
            return __Pyx_IterFinish();
        }
    }
    if (pitem) {
        *pitem = next_item;
    } else if (pkey && pvalue) {
        if (__Pyx_unpack_tuple2(next_item, pkey, pvalue, source_is_dict, source_is_dict, 1))
            return -1;
    } else if (pkey) {
        *pkey = next_item;
    } else {
        *pvalue = next_item;
    }
    return 1;
}

/* PyObjectVectorCallKwBuilder */
#if CYTHON_VECTORCALL
static int __Pyx_VectorcallBuilder_AddArg(PyObject *key, PyObject *value, PyObject *builder, PyObject **args, int n) {
    (void)__Pyx_PyObject_FastCallDict;
    if (__Pyx_PyTuple_SET_ITEM(builder, n, key) != (0)) return -1;
    Py_INCREF(key);
    args[n] = value;
    return 0;
}
CYTHON_UNUSED static int __Pyx_VectorcallBuilder_AddArg_Check(PyObject *key, PyObject *value, PyObject *builder, PyObject **args, int n) {
    (void)__Pyx_VectorcallBuilder_AddArgStr;
    if (unlikely(!PyUnicode_Check(key))) {
        PyErr_SetString(PyExc_TypeError, "keywords must be strings");
        return -1;
    }
    return __Pyx_VectorcallBuilder_AddArg(key, value, builder, args, n);
}
static int __Pyx_VectorcallBuilder_AddArgStr(const char *key, PyObject *value, PyObject *builder, PyObject **args, int n) {
    PyObject *pyKey = PyUnicode_FromString(key);
    if (!pyKey) return -1;
    return __Pyx_VectorcallBuilder_AddArg(pyKey, value, builder, args, n);
}
#else // CYTHON_VECTORCALL
CYTHON_UNUSED static int __Pyx_VectorcallBuilder_AddArg_Check(PyObject *key, PyObject *value, PyObject *builder, CYTHON_UNUSED PyObject **args, CYTHON_UNUSED int n) {
    if (unlikely(!PyUnicode_Check(key))) {
        PyErr_SetString(PyExc_TypeError, "keywords must be strings");
        return -1;
    }
    return PyDict_SetItem(builder, key, value);
}
#endif

/* PyObjectVectorCallMethodKwBuilder */
#if !CYTHON_VECTORCALL || PY_VERSION_HEX < 0x03090000
static PyObject *__Pyx_Object_VectorcallMethod_CallFromBuilder(PyObject *name, PyObject *const *args, size_t nargsf, PyObject *kwnames) {
    PyObject *result;
    PyObject *obj = PyObject_GetAttr(args[0], name);
    if (unlikely(!obj))
        return NULL;
    result = __Pyx_Object_Vectorcall_CallFromBuilder(obj, args+1, nargsf-1, kwnames);
    Py_DECREF(obj);
    return result;
}
#endif

/* RaiseUnboundLocalError */
static void __Pyx_RaiseUnboundLocalError(const char *varname) {
    PyErr_Format(PyExc_UnboundLocalError, "local variable '%s' referenced before assignment", varname);
}

/* PyObjectFormatAndDecref */
static CYTHON_INLINE PyObject* __Pyx_PyObject_FormatSimpleAndDecref(PyObject* s, PyObject* f) {
    if (unlikely(!s)) return NULL;
    if (likely(PyUnicode_CheckExact(s))) return s;
    return __Pyx_PyObject_FormatAndDecref(s, f);
}
static CYTHON_INLINE PyObject* __Pyx_PyObject_FormatAndDecref(PyObject* s, PyObject* f) {
    PyObject *result;
    if (unlikely(!s)) return NULL;
    result = PyObject_Format(s, f);
    Py_DECREF(s);
    return result;
}

/* pep479 */
static void __Pyx_Generator_Replace_StopIteration(int in_async_gen) {
    PyObject *exc, *val, *tb, *cur_exc, *new_exc;
    __Pyx_PyThreadState_declare
    int is_async_stopiteration = 0;
    CYTHON_MAYBE_UNUSED_VAR(in_async_gen);
    __Pyx_PyThreadState_assign
    cur_exc = __Pyx_PyErr_CurrentExceptionType();
    if (likely(!__Pyx_PyErr_GivenExceptionMatches(cur_exc, PyExc_StopIteration))) {
        if (in_async_gen && unlikely(__Pyx_PyErr_GivenExceptionMatches(cur_exc, PyExc_StopAsyncIteration))) {
            is_async_stopiteration = 1;
        } else {
            return;
        }
    }
    __Pyx_GetException(&exc, &val, &tb);
    Py_XDECREF(exc);
    Py_XDECREF(tb);
    new_exc = PyObject_CallFunction(PyExc_RuntimeError, "s",
        is_async_stopiteration ? "async generator raised StopAsyncIteration" :
        in_async_gen ? "async generator raised StopIteration" :
        "generator raised StopIteration");
    if (!new_exc) {
        Py_XDECREF(val);
        return;
    }
    PyException_SetCause(new_exc, val); // steals ref to val
    PyErr_SetObject(PyExc_RuntimeError, new_exc);
}

/* PyObjectCall2Args */
static CYTHON_INLINE PyObject* __Pyx_PyObject_Call2Args(PyObject* function, PyObject* arg1, PyObject* arg2) {
    PyObject *args[3] = {NULL, arg1, arg2};
    return __Pyx_PyObject_FastCall(function, args+1, 2 | __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET);
}

/* CallUnboundCMethod1 */
#if CYTHON_COMPILING_IN_CPYTHON
static CYTHON_INLINE PyObject* __Pyx_CallUnboundCMethod1(__Pyx_CachedCFunction* cfunc, PyObject* self, PyObject* arg) {
    int was_initialized =  __Pyx_CachedCFunction_GetAndSetInitializing(cfunc);
    if (likely(was_initialized == 2 && cfunc->func)) {
        int flag = cfunc->flag;
        if (flag == METH_O) {
            return __Pyx_CallCFunction(cfunc, self, arg);
        } else if (flag == METH_FASTCALL) {
            return __Pyx_CallCFunctionFast(cfunc, self, &arg, 1);
        } else if (flag == (METH_FASTCALL | METH_KEYWORDS)) {
            return __Pyx_CallCFunctionFastWithKeywords(cfunc, self, &arg, 1, NULL);
        }
    }
#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING
    else if (unlikely(was_initialized == 1)) {
        __Pyx_CachedCFunction tmp_cfunc = {
#ifndef __cplusplus
            0
#endif
        };
        tmp_cfunc.type = cfunc->type;
        tmp_cfunc.method_name = cfunc->method_name;
        return __Pyx__CallUnboundCMethod1(&tmp_cfunc, self, arg);
    }
#endif
    PyObject* result = __Pyx__CallUnboundCMethod1(cfunc, self, arg);
    __Pyx_CachedCFunction_SetFinishedInitializing(cfunc);
    return result;
}
#endif
static PyObject* __Pyx__CallUnboundCMethod1(__Pyx_CachedCFunction* cfunc, PyObject* self, PyObject* arg){
    PyObject *result = NULL;
    if (unlikely(!cfunc->func && !cfunc->method) && unlikely(__Pyx_TryUnpackUnboundCMethod(cfunc) < 0)) return NULL;
#if CYTHON_COMPILING_IN_CPYTHON
    if (cfunc->func && (cfunc->flag & METH_VARARGS)) {
        PyObject *args = PyTuple_New(1);
        if (unlikely(!args)) return NULL;
        Py_INCREF(arg);
        PyTuple_SET_ITEM(args, 0, arg);
        if (cfunc->flag & METH_KEYWORDS)
            result = __Pyx_CallCFunctionWithKeywords(cfunc, self, args, NULL);
        else
            result = __Pyx_CallCFunction(cfunc, self, args);
        Py_DECREF(args);
    } else
#endif
    {
        result = __Pyx_PyObject_Call2Args(cfunc->method, self, arg);
    }
    return result;
}

/* dict_getitem_default */
static PyObject* __Pyx_PyDict_GetItemDefault(PyObject* d, PyObject* key, PyObject* default_value) {
    PyObject* value;
#if !CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07020000
    value = PyDict_GetItemWithError(d, key);
    if (unlikely(!value)) {
        if (unlikely(PyErr_Occurred()))
            return NULL;
        value = default_value;
    }
    Py_INCREF(value);
    if ((1));
#else
    if (PyBytes_CheckExact(key) || PyUnicode_CheckExact(key) || PyLong_CheckExact(key)) {
        value = PyDict_GetItem(d, key);
        if (unlikely(!value)) {
            value = default_value;
        }
        Py_INCREF(value);
    }
#endif
    else {
        if (default_value == Py_None)
            value = __Pyx_CallUnboundCMethod1(&__pyx_mstate_global->__pyx_umethod_PyDict_Type_get, d, key);
        else
            value = __Pyx_CallUnboundCMethod2(&__pyx_mstate_global->__pyx_umethod_PyDict_Type_get, d, key, default_value);
    }
    return value;
}

/* PyLongBinop */
#if !CYTHON_COMPILING_IN_PYPY
static PyObject* __Pyx_Fallback___Pyx_PyLong_AddObjC(PyObject *op1, PyObject *op2, int inplace) {
    return (inplace ? PyNumber_InPlaceAdd : PyNumber_Add)(op1, op2);
}
#if CYTHON_USE_PYLONG_INTERNALS
static PyObject* __Pyx_Unpacked___Pyx_PyLong_AddObjC(PyObject *op1, PyObject *op2, long intval, int inplace, int zerodivision_check) {
    CYTHON_MAYBE_UNUSED_VAR(inplace);
    CYTHON_UNUSED_VAR(zerodivision_check);
    const long b = intval;
    long a, x;
#ifdef HAVE_LONG_LONG
    const PY_LONG_LONG llb = intval;
    PY_LONG_LONG lla, llx;
#endif
    if (unlikely(__Pyx_PyLong_IsZero(op1))) {
        return __Pyx_NewRef(op2);
    }
    if (likely(__Pyx_PyLong_IsCompact(op1))) {
        a = __Pyx_PyLong_CompactValue(op1);
    } else {
        const digit* digits = __Pyx_PyLong_Digits(op1);
        const Py_ssize_t size = __Pyx_PyLong_SignedDigitCount(op1);
        switch (size) {
            case -2:
                if (8 * sizeof(long) - 1 > 2 * PyLong_SHIFT) {
                    a = -(long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]));
                    break;
                #ifdef HAVE_LONG_LONG
                } else if (8 * sizeof(PY_LONG_LONG) - 1 > 2 * PyLong_SHIFT) {
                    lla = -(PY_LONG_LONG) (((((unsigned PY_LONG_LONG)digits[1]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[0]));
                    goto long_long;
                #endif
                }
                CYTHON_FALLTHROUGH;
            case 2:
                if (8 * sizeof(long) - 1 > 2 * PyLong_SHIFT) {
                    a = (long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]));
                    break;
                #ifdef HAVE_LONG_LONG
                } else if (8 * sizeof(PY_LONG_LONG) - 1 > 2 * PyLong_SHIFT) {
                    lla = (PY_LONG_LONG) (((((unsigned PY_LONG_LONG)digits[1]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[0]));
                    goto long_long;
                #endif
                }
                CYTHON_FALLTHROUGH;
            case -3:
                if (8 * sizeof(long) - 1 > 3 * PyLong_SHIFT) {
                    a = -(long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]));
                    break;
                #ifdef HAVE_LONG_LONG
                } else if (8 * sizeof(PY_LONG_LONG) - 1 > 3 * PyLong_SHIFT) {
                    lla = -(PY_LONG_LONG) (((((((unsigned PY_LONG_LONG)digits[2]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[1]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[0]));
                    goto long_long;
                #endif
                }
                CYTHON_FALLTHROUGH;
            case 3:
                if (8 * sizeof(long) - 1 > 3 * PyLong_SHIFT) {
                    a = (long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]));
                    break;
                #ifdef HAVE_LONG_LONG
                } else if (8 * sizeof(PY_LONG_LONG) - 1 > 3 * PyLong_SHIFT) {
                    lla = (PY_LONG_LONG) (((((((unsigned PY_LONG_LONG)digits[2]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[1]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[0]));
                    goto long_long;
                #endif
                }
                CYTHON_FALLTHROUGH;
            case -4:
                if (8 * sizeof(long) - 1 > 4 * PyLong_SHIFT) {
                    a = -(long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]));
                    break;
                #ifdef HAVE_LONG_LONG
                } else if (8 * sizeof(PY_LONG_LONG) - 1 > 4 * PyLong_SHIFT) {
                    lla = -(PY_LONG_LONG) (((((((((unsigned PY_LONG_LONG)digits[3]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[2]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[1]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[0]));
                    goto long_long;
                #endif
                }
                CYTHON_FALLTHROUGH;
            case 4:
                if (8 * sizeof(long) - 1 > 4 * PyLong_SHIFT) {
                    a = (long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]));
                    break;
                #ifdef HAVE_LONG_LONG
                } else if (8 * sizeof(PY_LONG_LONG) - 1 > 4 * PyLong_SHIFT) {
                    lla = (PY_LONG_LONG) (((((((((unsigned PY_LONG_LONG)digits[3]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[2]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[1]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[0]));
                    goto long_long;
                #endif
                }
                CYTHON_FALLTHROUGH;
            default: return PyLong_Type.tp_as_number->nb_add(op1, op2);
        }
    }
            x = a + b;
        return PyLong_FromLong(x);
#ifdef HAVE_LONG_LONG
    long_long:
            llx = lla + llb;
        return PyLong_FromLongLong(llx);
#endif
    return __Pyx_Fallback___Pyx_PyLong_AddObjC(op1, op2, inplace);
    
    
}
#endif
static PyObject* __Pyx_Float___Pyx_PyLong_AddObjC(PyObject *float_val, long intval, int zerodivision_check) {
    CYTHON_UNUSED_VAR(zerodivision_check);
    const long b = intval;
    double a = __Pyx_PyFloat_AS_DOUBLE(float_val);
        double result;
        
        result = ((double)a) + (double)b;
        return PyFloat_FromDouble(result);
}
static CYTHON_INLINE PyObject* __Pyx_PyLong_AddObjC(PyObject *op1, PyObject *op2, long intval, int inplace, int zerodivision_check) {
    CYTHON_MAYBE_UNUSED_VAR(intval);
    CYTHON_UNUSED_VAR(zerodivision_check);
    #if CYTHON_USE_PYLONG_INTERNALS
    if (likely(PyLong_CheckExact(op1))) {
        return __Pyx_Unpacked___Pyx_PyLong_AddObjC(op1, op2, intval, inplace, zerodivision_check);
    }
    #endif
    if (PyFloat_CheckExact(op1)) {
        return __Pyx_Float___Pyx_PyLong_AddObjC(op1, intval, zerodivision_check);
    }
    return __Pyx_Fallback___Pyx_PyLong_AddObjC(op1, op2, inplace);
}
#endif

/* GetAttr */
static CYTHON_INLINE PyObject *__Pyx_GetAttr(PyObject *o, PyObject *n) {
#if CYTHON_USE_TYPE_SLOTS
    if (likely(PyUnicode_Check(n)))
        return __Pyx_PyObject_GetAttrStr(o, n);
#endif
    return PyObject_GetAttr(o, n);
}

/* MergeKeywords */
static int __Pyx_MergeKeywords_dict(PyObject *kwdict, PyObject *source_dict) {
    Py_ssize_t len1, len2;
    len2 = PyDict_Size(source_dict);
    if (unlikely(len2 == -1)) return -1;
    if (len2 == 0) {
        return 0;
    }
    len1 = PyDict_Size(kwdict);
    if (unlikely(len1 == -1)) return -1;
    if (len1 > 0) {
        PyObject *key, *smaller_dict, *larger_dict;
        Py_ssize_t ppos = 0;
        int duplicates_found = 0;
        if (len1 <= len2) {
            smaller_dict = kwdict;
            larger_dict = source_dict;
        } else {
            smaller_dict = source_dict;
            larger_dict = kwdict;
        }
        __Pyx_BEGIN_CRITICAL_SECTION(smaller_dict);
        while (PyDict_Next(smaller_dict, &ppos, &key, NULL)) {
            #if CYTHON_AVOID_BORROWED_REFS || CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS
            Py_INCREF(key);
            #endif
            if (unlikely(PyDict_Contains(larger_dict, key))) {
                __Pyx_RaiseDoubleKeywordsError("function", key);
                #if CYTHON_AVOID_BORROWED_REFS || CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS
                Py_DECREF(key);
                #endif
                duplicates_found = 1;
                break;
            };
            #if CYTHON_AVOID_BORROWED_REFS || CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS
            Py_DECREF(key);
            #endif
        }
        __Pyx_END_CRITICAL_SECTION();
        if (unlikely(duplicates_found))
            return -1;
    }
    return PyDict_Update(kwdict, source_dict);
}
static int __Pyx_MergeKeywords_any(PyObject *kwdict, PyObject *source_mapping) {
    PyObject *iter, *key = NULL, *value = NULL;
    int source_is_dict, result;
    Py_ssize_t orig_length, ppos = 0;
    iter = __Pyx_dict_iterator(source_mapping, 0, __pyx_mstate_global->__pyx_n_u_items, &orig_length, &source_is_dict);
    if (unlikely(!iter)) {
        PyObject *args;
        if (unlikely(!PyErr_ExceptionMatches(PyExc_AttributeError))) goto bad;
        PyErr_Clear();
        args = PyTuple_Pack(1, source_mapping);
        if (likely(args)) {
            PyObject *fallback = PyObject_Call((PyObject*)&PyDict_Type, args, NULL);
            Py_DECREF(args);
            if (likely(fallback)) {
                result = __Pyx_MergeKeywords_dict(kwdict, fallback);
                Py_DECREF(fallback);
                return result;
            }
        }
        if (unlikely(!iter)) goto bad;
    }
    while (1) {
        result = __Pyx_dict_iter_next(iter, orig_length, &ppos, &key, &value, NULL, source_is_dict);
        if (unlikely(result < 0)) goto bad;
        if (!result) break;
    #if PY_VERSION_HEX >= 0x030d0000 && !CYTHON_COMPILING_IN_LIMITED_API
        {
            int inserted = PyDict_SetDefaultRef(kwdict, key, value, NULL);
            if (unlikely(inserted != 0)) {
                if (inserted == 1) __Pyx_RaiseDoubleKeywordsError("function", key);
                result = -1;
            }
        }
    #else
        if (unlikely(PyDict_Contains(kwdict, key))) {
            __Pyx_RaiseDoubleKeywordsError("function", key);
            result = -1;
        } else {
            result = PyDict_SetItem(kwdict, key, value);
        }
    #endif
        Py_DECREF(key);
        Py_DECREF(value);
        if (unlikely(result < 0)) goto bad;
    }
    Py_XDECREF(iter);
    return 0;
bad:
    Py_XDECREF(iter);
    return -1;
}
static CYTHON_INLINE int __Pyx_MergeKeywords(PyObject *kwdict, PyObject *source_mapping) {
    assert(PyDict_Check(kwdict));
    if (likely(PyDict_Check(source_mapping))) {
        return __Pyx_MergeKeywords_dict(kwdict, source_mapping);
    } else {
        return __Pyx_MergeKeywords_any(kwdict, source_mapping);
    }
}

/* SwapException */
#if CYTHON_FAST_THREAD_STATE
static CYTHON_INLINE void __Pyx__ExceptionSwap(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb) {
    PyObject *tmp_type, *tmp_value, *tmp_tb;
  #if CYTHON_USE_EXC_INFO_STACK && PY_VERSION_HEX >= 0x030B00a4
    _PyErr_StackItem *exc_info = tstate->exc_info;
    tmp_value = exc_info->exc_value;
    exc_info->exc_value = *value;
    if (tmp_value == NULL || tmp_value == Py_None) {
        Py_XDECREF(tmp_value);
        tmp_value = NULL;
        tmp_type = NULL;
        tmp_tb = NULL;
    } else {
        tmp_type = (PyObject*) Py_TYPE(tmp_value);
        Py_INCREF(tmp_type);
        #if CYTHON_COMPILING_IN_CPYTHON
        tmp_tb = ((PyBaseExceptionObject*) tmp_value)->traceback;
        Py_XINCREF(tmp_tb);
        #else
        tmp_tb = PyException_GetTraceback(tmp_value);
        #endif
    }
  #elif CYTHON_USE_EXC_INFO_STACK
    _PyErr_StackItem *exc_info = tstate->exc_info;
    tmp_type = exc_info->exc_type;
    tmp_value = exc_info->exc_value;
    tmp_tb = exc_info->exc_traceback;
    exc_info->exc_type = *type;
    exc_info->exc_value = *value;
    exc_info->exc_traceback = *tb;
  #else
    tmp_type = tstate->exc_type;
    tmp_value = tstate->exc_value;
    tmp_tb = tstate->exc_traceback;
    tstate->exc_type = *type;
    tstate->exc_value = *value;
    tstate->exc_traceback = *tb;
  #endif
    *type = tmp_type;
    *value = tmp_value;
    *tb = tmp_tb;
}
#else
static CYTHON_INLINE void __Pyx_ExceptionSwap(PyObject **type, PyObject **value, PyObject **tb) {
    PyObject *tmp_type, *tmp_value, *tmp_tb;
    PyErr_GetExcInfo(&tmp_type, &tmp_value, &tmp_tb);
    PyErr_SetExcInfo(*type, *value, *tb);
    *type = tmp_type;
    *value = tmp_value;
    *tb = tmp_tb;
}
#endif

/* SliceObject */
static CYTHON_INLINE PyObject* __Pyx_PyObject_GetSlice(PyObject* obj,
        Py_ssize_t cstart, Py_ssize_t cstop,
        PyObject** _py_start, PyObject** _py_stop, PyObject** _py_slice,
        int has_cstart, int has_cstop, CYTHON_UNUSED int wraparound) {
    __Pyx_TypeName obj_type_name;
#if CYTHON_USE_TYPE_SLOTS
    PyMappingMethods* mp = Py_TYPE(obj)->tp_as_mapping;
    if (likely(mp && mp->mp_subscript))
#endif
    {
        PyObject* result;
        PyObject *py_slice, *py_start, *py_stop;
        if (_py_slice) {
            py_slice = *_py_slice;
        } else {
            PyObject* owned_start = NULL;
            PyObject* owned_stop = NULL;
            if (_py_start) {
                py_start = *_py_start;
            } else {
                if (has_cstart) {
                    owned_start = py_start = PyLong_FromSsize_t(cstart);
                    if (unlikely(!py_start)) goto bad;
                } else
                    py_start = Py_None;
            }
            if (_py_stop) {
                py_stop = *_py_stop;
            } else {
                if (has_cstop) {
                    owned_stop = py_stop = PyLong_FromSsize_t(cstop);
                    if (unlikely(!py_stop)) {
                        Py_XDECREF(owned_start);
                        goto bad;
                    }
                } else
                    py_stop = Py_None;
            }
            py_slice = PySlice_New(py_start, py_stop, Py_None);
            Py_XDECREF(owned_start);
            Py_XDECREF(owned_stop);
            if (unlikely(!py_slice)) goto bad;
        }
#if CYTHON_USE_TYPE_SLOTS
        result = mp->mp_subscript(obj, py_slice);
#else
        result = PyObject_GetItem(obj, py_slice);
#endif
        if (!_py_slice) {
            Py_DECREF(py_slice);
        }
        return result;
    }
    obj_type_name = __Pyx_PyType_GetFullyQualifiedName(Py_TYPE(obj));
    PyErr_Format(PyExc_TypeError,
        "'" __Pyx_FMT_TYPENAME "' object is unsliceable", obj_type_name);
    __Pyx_DECREF_TypeName(obj_type_name);
bad:
    return NULL;
}

/* ObjectGetItem */
#if CYTHON_USE_TYPE_SLOTS
static PyObject *__Pyx_PyObject_GetIndex(PyObject *obj, PyObject *index) {
    PyObject *runerr = NULL;
    Py_ssize_t key_value;
    key_value = __Pyx_PyIndex_AsSsize_t(index);
    if (likely(key_value != -1 || !(runerr = PyErr_Occurred()))) {
        return __Pyx_GetItemInt_Fast(obj, key_value, 0, 1, 1);
    }
    if (PyErr_GivenExceptionMatches(runerr, PyExc_OverflowError)) {
        __Pyx_TypeName index_type_name = __Pyx_PyType_GetFullyQualifiedName(Py_TYPE(index));
        PyErr_Clear();
        PyErr_Format(PyExc_IndexError,
            "cannot fit '" __Pyx_FMT_TYPENAME "' into an index-sized integer", index_type_name);
        __Pyx_DECREF_TypeName(index_type_name);
    }
    return NULL;
}
static PyObject *__Pyx_PyObject_GetItem_Slow(PyObject *obj, PyObject *key) {
    __Pyx_TypeName obj_type_name;
    if (likely(PyType_Check(obj))) {
        PyObject *meth = __Pyx_PyObject_GetAttrStrNoError(obj, __pyx_mstate_global->__pyx_n_u_class_getitem);
        if (!meth) {
            PyErr_Clear();
        } else {
            PyObject *result = __Pyx_PyObject_CallOneArg(meth, key);
            Py_DECREF(meth);
            return result;
        }
    }
    obj_type_name = __Pyx_PyType_GetFullyQualifiedName(Py_TYPE(obj));
    PyErr_Format(PyExc_TypeError,
        "'" __Pyx_FMT_TYPENAME "' object is not subscriptable", obj_type_name);
    __Pyx_DECREF_TypeName(obj_type_name);
    return NULL;
}
static PyObject *__Pyx_PyObject_GetItem(PyObject *obj, PyObject *key) {
    PyTypeObject *tp = Py_TYPE(obj);
    PyMappingMethods *mm = tp->tp_as_mapping;
    PySequenceMethods *sm = tp->tp_as_sequence;
    if (likely(mm && mm->mp_subscript)) {
        return mm->mp_subscript(obj, key);
    }
    if (likely(sm && sm->sq_item)) {
        return __Pyx_PyObject_GetIndex(obj, key);
    }
    return __Pyx_PyObject_GetItem_Slow(obj, key);
}
#endif

/* PyLongBinop */
#if !CYTHON_COMPILING_IN_PYPY
static PyObject* __Pyx_Fallback___Pyx_PyLong_RemainderObjC(PyObject *op1, PyObject *op2, int inplace) {
    return (inplace ? PyNumber_InPlaceRemainder : PyNumber_Remainder)(op1, op2);
}
#if CYTHON_USE_PYLONG_INTERNALS
static PyObject* __Pyx_Unpacked___Pyx_PyLong_RemainderObjC(PyObject *op1, PyObject *op2, long intval, int inplace, int zerodivision_check) {
    CYTHON_MAYBE_UNUSED_VAR(inplace);
    CYTHON_UNUSED_VAR(zerodivision_check);
    const long b = intval;
    long a, x;
#ifdef HAVE_LONG_LONG
    const PY_LONG_LONG llb = intval;
    PY_LONG_LONG lla, llx;
#endif
    if (unlikely(__Pyx_PyLong_IsZero(op1))) {
        return __Pyx_NewRef(op1);
    }
    if (likely(__Pyx_PyLong_IsCompact(op1))) {
        a = __Pyx_PyLong_CompactValue(op1);
    } else {
        const digit* digits = __Pyx_PyLong_Digits(op1);
        const Py_ssize_t size = __Pyx_PyLong_SignedDigitCount(op1);
        switch (size) {
            case -2:
                if (8 * sizeof(long) - 1 > 2 * PyLong_SHIFT) {
                    a = -(long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]));
                    break;
                #ifdef HAVE_LONG_LONG
                } else if (8 * sizeof(PY_LONG_LONG) - 1 > 2 * PyLong_SHIFT) {
                    lla = -(PY_LONG_LONG) (((((unsigned PY_LONG_LONG)digits[1]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[0]));
                    goto long_long;
                #endif
                }
                CYTHON_FALLTHROUGH;
            case 2:
                if (8 * sizeof(long) - 1 > 2 * PyLong_SHIFT) {
                    a = (long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]));
                    break;
                #ifdef HAVE_LONG_LONG
                } else if (8 * sizeof(PY_LONG_LONG) - 1 > 2 * PyLong_SHIFT) {
                    lla = (PY_LONG_LONG) (((((unsigned PY_LONG_LONG)digits[1]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[0]));
                    goto long_long;
                #endif
                }
                CYTHON_FALLTHROUGH;
            case -3:
                if (8 * sizeof(long) - 1 > 3 * PyLong_SHIFT) {
                    a = -(long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]));
                    break;
                #ifdef HAVE_LONG_LONG
                } else if (8 * sizeof(PY_LONG_LONG) - 1 > 3 * PyLong_SHIFT) {
                    lla = -(PY_LONG_LONG) (((((((unsigned PY_LONG_LONG)digits[2]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[1]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[0]));
                    goto long_long;
                #endif
                }
                CYTHON_FALLTHROUGH;
            case 3:
                if (8 * sizeof(long) - 1 > 3 * PyLong_SHIFT) {
                    a = (long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]));
                    break;
                #ifdef HAVE_LONG_LONG
                } else if (8 * sizeof(PY_LONG_LONG) - 1 > 3 * PyLong_SHIFT) {
                    lla = (PY_LONG_LONG) (((((((unsigned PY_LONG_LONG)digits[2]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[1]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[0]));
                    goto long_long;
                #endif
                }
                CYTHON_FALLTHROUGH;
            case -4:
                if (8 * sizeof(long) - 1 > 4 * PyLong_SHIFT) {
                    a = -(long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]));
                    break;
                #ifdef HAVE_LONG_LONG
                } else if (8 * sizeof(PY_LONG_LONG) - 1 > 4 * PyLong_SHIFT) {
                    lla = -(PY_LONG_LONG) (((((((((unsigned PY_LONG_LONG)digits[3]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[2]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[1]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[0]));
                    goto long_long;
                #endif
                }
                CYTHON_FALLTHROUGH;
            case 4:
                if (8 * sizeof(long) - 1 > 4 * PyLong_SHIFT) {
                    a = (long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]));
                    break;
                #ifdef HAVE_LONG_LONG
                } else if (8 * sizeof(PY_LONG_LONG) - 1 > 4 * PyLong_SHIFT) {
                    lla = (PY_LONG_LONG) (((((((((unsigned PY_LONG_LONG)digits[3]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[2]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[1]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[0]));
                    goto long_long;
                #endif
                }
                CYTHON_FALLTHROUGH;
            default: return PyLong_Type.tp_as_number->nb_remainder(op1, op2);
        }
    }
            x = a % b;
            x += ((x != 0) & ((x ^ b) < 0)) * b;
        return PyLong_FromLong(x);
#ifdef HAVE_LONG_LONG
    long_long:
            llx = lla % llb;
            llx += ((llx != 0) & ((llx ^ llb) < 0)) * llb;
        return PyLong_FromLongLong(llx);
#endif
    return __Pyx_Fallback___Pyx_PyLong_RemainderObjC(op1, op2, inplace);
    
    
}
#endif
static CYTHON_INLINE PyObject* __Pyx_PyLong_RemainderObjC(PyObject *op1, PyObject *op2, long intval, int inplace, int zerodivision_check) {
    CYTHON_MAYBE_UNUSED_VAR(intval);
    CYTHON_UNUSED_VAR(zerodivision_check);
    #if CYTHON_USE_PYLONG_INTERNALS
    if (likely(PyLong_CheckExact(op1))) {
        return __Pyx_Unpacked___Pyx_PyLong_RemainderObjC(op1, op2, intval, inplace, zerodivision_check);
    }
    #endif
    return __Pyx_Fallback___Pyx_PyLong_RemainderObjC(op1, op2, inplace);
}
#endif

/* PyLongCompare */
static CYTHON_INLINE int __Pyx_PyLong_BoolEqObjC(PyObject *op1, PyObject *op2, long intval, long inplace) {
    CYTHON_MAYBE_UNUSED_VAR(intval);
    CYTHON_UNUSED_VAR(inplace);
    if (op1 == op2) {
        return 1;
    }
    #if CYTHON_USE_PYLONG_INTERNALS
    if (likely(PyLong_CheckExact(op1))) {
        int unequal;
        unsigned long uintval;
        Py_ssize_t size = __Pyx_PyLong_DigitCount(op1);
        const digit* digits = __Pyx_PyLong_Digits(op1);
        if (intval == 0) {
            return (__Pyx_PyLong_IsZero(op1) == 1);
        } else if (intval < 0) {
            if (__Pyx_PyLong_IsNonNeg(op1))
                return 0;
            intval = -intval;
        } else {
            if (__Pyx_PyLong_IsNeg(op1))
                return 0;
        }
        uintval = (unsigned long) intval;
#if PyLong_SHIFT * 4 < SIZEOF_LONG*8
        if (uintval >> (PyLong_SHIFT * 4)) {
            unequal = (size != 5) || (digits[0] != (uintval & (unsigned long) PyLong_MASK))
                 | (digits[1] != ((uintval >> (1 * PyLong_SHIFT)) & (unsigned long) PyLong_MASK)) | (digits[2] != ((uintval >> (2 * PyLong_SHIFT)) & (unsigned long) PyLong_MASK)) | (digits[3] != ((uintval >> (3 * PyLong_SHIFT)) & (unsigned long) PyLong_MASK)) | (digits[4] != ((uintval >> (4 * PyLong_SHIFT)) & (unsigned long) PyLong_MASK));
        } else
#endif
#if PyLong_SHIFT * 3 < SIZEOF_LONG*8
        if (uintval >> (PyLong_SHIFT * 3)) {
            unequal = (size != 4) || (digits[0] != (uintval & (unsigned long) PyLong_MASK))
                 | (digits[1] != ((uintval >> (1 * PyLong_SHIFT)) & (unsigned long) PyLong_MASK)) | (digits[2] != ((uintval >> (2 * PyLong_SHIFT)) & (unsigned long) PyLong_MASK)) | (digits[3] != ((uintval >> (3 * PyLong_SHIFT)) & (unsigned long) PyLong_MASK));
        } else
#endif
#if PyLong_SHIFT * 2 < SIZEOF_LONG*8
        if (uintval >> (PyLong_SHIFT * 2)) {
            unequal = (size != 3) || (digits[0] != (uintval & (unsigned long) PyLong_MASK))
                 | (digits[1] != ((uintval >> (1 * PyLong_SHIFT)) & (unsigned long) PyLong_MASK)) | (digits[2] != ((uintval >> (2 * PyLong_SHIFT)) & (unsigned long) PyLong_MASK));
        } else
#endif
#if PyLong_SHIFT * 1 < SIZEOF_LONG*8
        if (uintval >> (PyLong_SHIFT * 1)) {
            unequal = (size != 2) || (digits[0] != (uintval & (unsigned long) PyLong_MASK))
                 | (digits[1] != ((uintval >> (1 * PyLong_SHIFT)) & (unsigned long) PyLong_MASK));
        } else
#endif
            unequal = (size != 1) || (((unsigned long) digits[0]) != (uintval & (unsigned long) PyLong_MASK));
        return (unequal == 0);
    }
    #endif
    if (PyFloat_CheckExact(op1)) {
        const long b = intval;
        double a = __Pyx_PyFloat_AS_DOUBLE(op1);
        return ((double)a == (double)b);
    }
    return __Pyx_PyObject_IsTrueAndDecref(
        PyObject_RichCompare(op1, op2, Py_EQ));
}

/* CallTypeTraverse */
#if !CYTHON_USE_TYPE_SPECS || (!CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x03090000)
#else
static int __Pyx_call_type_traverse(PyObject *o, int always_call, visitproc visit, void *arg) {
    #if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX < 0x03090000
    if (__Pyx_get_runtime_version() < 0x03090000) return 0;
    #endif
    if (!always_call) {
        PyTypeObject *base = __Pyx_PyObject_GetSlot(o, tp_base, PyTypeObject*);
        unsigned long flags = PyType_GetFlags(base);
        if (flags & Py_TPFLAGS_HEAPTYPE) {
            return 0;
        }
    }
    Py_VISIT((PyObject*)Py_TYPE(o));
    return 0;
}
#endif

/* LimitedApiGetTypeDict */
#if CYTHON_COMPILING_IN_LIMITED_API
static Py_ssize_t __Pyx_GetTypeDictOffset(void) {
    PyObject *tp_dictoffset_o;
    Py_ssize_t tp_dictoffset;
    tp_dictoffset_o = PyObject_GetAttrString((PyObject*)(&PyType_Type), "__dictoffset__");
    if (unlikely(!tp_dictoffset_o)) return -1;
    tp_dictoffset = PyLong_AsSsize_t(tp_dictoffset_o);
    Py_DECREF(tp_dictoffset_o);
    if (unlikely(tp_dictoffset == 0)) {
        PyErr_SetString(
            PyExc_TypeError,
            "'type' doesn't have a dictoffset");
        return -1;
    } else if (unlikely(tp_dictoffset < 0)) {
        PyErr_SetString(
            PyExc_TypeError,
            "'type' has an unexpected negative dictoffset. "
            "Please report this as Cython bug");
        return -1;
    }
    return tp_dictoffset;
}
static PyObject *__Pyx_GetTypeDict(PyTypeObject *tp) {
    static Py_ssize_t tp_dictoffset = 0;
    if (unlikely(tp_dictoffset == 0)) {
        tp_dictoffset = __Pyx_GetTypeDictOffset();
        if (unlikely(tp_dictoffset == -1 && PyErr_Occurred())) {
            tp_dictoffset = 0; // try again next time?
            return NULL;
        }
    }
    return *(PyObject**)((char*)tp + tp_dictoffset);
}
#endif

/* SetItemOnTypeDict */
static int __Pyx__SetItemOnTypeDict(PyTypeObject *tp, PyObject *k, PyObject *v) {
    int result;
    PyObject *tp_dict;
#if CYTHON_COMPILING_IN_LIMITED_API
    tp_dict = __Pyx_GetTypeDict(tp);
    if (unlikely(!tp_dict)) return -1;
#else
    tp_dict = tp->tp_dict;
#endif
    result = PyDict_SetItem(tp_dict, k, v);
    if (likely(!result)) {
        PyType_Modified(tp);
        if (unlikely(PyObject_HasAttr(v, __pyx_mstate_global->__pyx_n_u_set_name))) {
            PyObject *setNameResult = PyObject_CallMethodObjArgs(v, __pyx_mstate_global->__pyx_n_u_set_name,  (PyObject *) tp, k, NULL);
            if (!setNameResult) return -1;
            Py_DECREF(setNameResult);
        }
    }
    return result;
}

/* FixUpExtensionType */
static int __Pyx_fix_up_extension_type_from_spec(PyType_Spec *spec, PyTypeObject *type) {
#if __PYX_LIMITED_VERSION_HEX > 0x030900B1
    CYTHON_UNUSED_VAR(spec);
    CYTHON_UNUSED_VAR(type);
    CYTHON_UNUSED_VAR(__Pyx__SetItemOnTypeDict);
#else
    const PyType_Slot *slot = spec->slots;
    int changed = 0;
#if !CYTHON_COMPILING_IN_LIMITED_API
    while (slot && slot->slot && slot->slot != Py_tp_members)
        slot++;
    if (slot && slot->slot == Py_tp_members) {
#if !CYTHON_COMPILING_IN_CPYTHON
        const
#endif  // !CYTHON_COMPILING_IN_CPYTHON)
            PyMemberDef *memb = (PyMemberDef*) slot->pfunc;
        while (memb && memb->name) {
            if (memb->name[0] == '_' && memb->name[1] == '_') {
                if (strcmp(memb->name, "__weaklistoffset__") == 0) {
                    assert(memb->type == T_PYSSIZET);
                    assert(memb->flags == READONLY);
                    type->tp_weaklistoffset = memb->offset;
                    changed = 1;
                }
                else if (strcmp(memb->name, "__dictoffset__") == 0) {
                    assert(memb->type == T_PYSSIZET);
                    assert(memb->flags == READONLY);
                    type->tp_dictoffset = memb->offset;
                    changed = 1;
                }
#if CYTHON_METH_FASTCALL
                else if (strcmp(memb->name, "__vectorcalloffset__") == 0) {
                    assert(memb->type == T_PYSSIZET);
                    assert(memb->flags == READONLY);
#if PY_VERSION_HEX >= 0x030800b4
                    type->tp_vectorcall_offset = memb->offset;
#else
                    type->tp_print = (printfunc) memb->offset;
#endif
                    changed = 1;
                }
#endif  // CYTHON_METH_FASTCALL
                else if (strcmp(memb->name, "__module__") == 0) {
                    PyObject *descr;
                    assert(memb->type == T_OBJECT);
                    assert(memb->flags == 0 || memb->flags == READONLY);
                    descr = PyDescr_NewMember(type, memb);
                    if (unlikely(!descr))
                        return -1;
                    int set_item_result = PyDict_SetItem(type->tp_dict, PyDescr_NAME(descr), descr);
                    Py_DECREF(descr);
                    if (unlikely(set_item_result < 0)) {
                        return -1;
                    }
                    changed = 1;
                }
            }
            memb++;
        }
    }
#endif  // !CYTHON_COMPILING_IN_LIMITED_API
    slot = spec->slots;
    while (slot && slot->slot && slot->slot != Py_tp_getset)
        slot++;
    if (slot && slot->slot == Py_tp_getset) {
        PyGetSetDef *getset = (PyGetSetDef*) slot->pfunc;
        while (getset && getset->name) {
            if (getset->name[0] == '_' && getset->name[1] == '_' && strcmp(getset->name, "__module__") == 0) {
                PyObject *descr = PyDescr_NewGetSet(type, getset);
                if (unlikely(!descr))
                    return -1;
                #if CYTHON_COMPILING_IN_LIMITED_API
                PyObject *pyname = PyUnicode_FromString(getset->name);
                if (unlikely(!pyname)) {
                    Py_DECREF(descr);
                    return -1;
                }
                int set_item_result = __Pyx_SetItemOnTypeDict(type, pyname, descr);
                Py_DECREF(pyname);
                #else
                CYTHON_UNUSED_VAR(__Pyx__SetItemOnTypeDict);
                int set_item_result = PyDict_SetItem(type->tp_dict, PyDescr_NAME(descr), descr);
                #endif
                Py_DECREF(descr);
                if (unlikely(set_item_result < 0)) {
                    return -1;
                }
                changed = 1;
            }
            ++getset;
        }
    }
    if (changed)
        PyType_Modified(type);
#endif  // PY_VERSION_HEX > 0x030900B1
    return 0;
}

/* ValidateBasesTuple */
#if CYTHON_COMPILING_IN_CPYTHON || CYTHON_COMPILING_IN_LIMITED_API || CYTHON_USE_TYPE_SPECS
static int __Pyx_validate_bases_tuple(const char *type_name, Py_ssize_t dictoffset, PyObject *bases) {
    Py_ssize_t i, n;
#if CYTHON_ASSUME_SAFE_SIZE
    n = PyTuple_GET_SIZE(bases);
#else
    n = PyTuple_Size(bases);
    if (unlikely(n < 0)) return -1;
#endif
    for (i = 1; i < n; i++)
    {
        PyTypeObject *b;
#if CYTHON_AVOID_BORROWED_REFS
        PyObject *b0 = PySequence_GetItem(bases, i);
        if (!b0) return -1;
#elif CYTHON_ASSUME_SAFE_MACROS
        PyObject *b0 = PyTuple_GET_ITEM(bases, i);
#else
        PyObject *b0 = PyTuple_GetItem(bases, i);
        if (!b0) return -1;
#endif
        b = (PyTypeObject*) b0;
        if (!__Pyx_PyType_HasFeature(b, Py_TPFLAGS_HEAPTYPE))
        {
            __Pyx_TypeName b_name = __Pyx_PyType_GetFullyQualifiedName(b);
            PyErr_Format(PyExc_TypeError,
                "base class '" __Pyx_FMT_TYPENAME "' is not a heap type", b_name);
            __Pyx_DECREF_TypeName(b_name);
#if CYTHON_AVOID_BORROWED_REFS
            Py_DECREF(b0);
#endif
            return -1;
        }
        if (dictoffset == 0)
        {
            Py_ssize_t b_dictoffset = 0;
#if CYTHON_USE_TYPE_SLOTS
            b_dictoffset = b->tp_dictoffset;
#else
            PyObject *py_b_dictoffset = PyObject_GetAttrString((PyObject*)b, "__dictoffset__");
            if (!py_b_dictoffset) goto dictoffset_return;
            b_dictoffset = PyLong_AsSsize_t(py_b_dictoffset);
            Py_DECREF(py_b_dictoffset);
            if (b_dictoffset == -1 && PyErr_Occurred()) goto dictoffset_return;
#endif
            if (b_dictoffset) {
                {
                    __Pyx_TypeName b_name = __Pyx_PyType_GetFullyQualifiedName(b);
                    PyErr_Format(PyExc_TypeError,
                        "extension type '%.200s' has no __dict__ slot, "
                        "but base type '" __Pyx_FMT_TYPENAME "' has: "
                        "either add 'cdef dict __dict__' to the extension type "
                        "or add '__slots__ = [...]' to the base type",
                        type_name, b_name);
                    __Pyx_DECREF_TypeName(b_name);
                }
#if !CYTHON_USE_TYPE_SLOTS
              dictoffset_return:
#endif
#if CYTHON_AVOID_BORROWED_REFS
                Py_DECREF(b0);
#endif
                return -1;
            }
        }
#if CYTHON_AVOID_BORROWED_REFS
        Py_DECREF(b0);
#endif
    }
    return 0;
}
#endif

/* PyType_Ready */
CYTHON_UNUSED static int __Pyx_PyType_HasMultipleInheritance(PyTypeObject *t) {
    while (t) {
        PyObject *bases = __Pyx_PyType_GetSlot(t, tp_bases, PyObject*);
        if (bases) {
            return 1;
        }
        t = __Pyx_PyType_GetSlot(t, tp_base, PyTypeObject*);
    }
    return 0;
}
static int __Pyx_PyType_Ready(PyTypeObject *t) {
#if CYTHON_USE_TYPE_SPECS || !CYTHON_COMPILING_IN_CPYTHON || defined(PYSTON_MAJOR_VERSION)
    (void)__Pyx_PyObject_CallMethod0;
#if CYTHON_USE_TYPE_SPECS
    (void)__Pyx_validate_bases_tuple;
#endif
    return PyType_Ready(t);
#else
    int r;
    if (!__Pyx_PyType_HasMultipleInheritance(t)) {
        return PyType_Ready(t);
    }
    PyObject *bases = __Pyx_PyType_GetSlot(t, tp_bases, PyObject*);
    if (bases && unlikely(__Pyx_validate_bases_tuple(t->tp_name, t->tp_dictoffset, bases) == -1))
        return -1;
#if !defined(PYSTON_MAJOR_VERSION)
    {
        int gc_was_enabled;
    #if PY_VERSION_HEX >= 0x030A00b1
        gc_was_enabled = PyGC_Disable();
        (void)__Pyx_PyObject_CallMethod0;
    #else
        PyObject *ret, *py_status;
        PyObject *gc = NULL;
        #if (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM+0 >= 0x07030400) &&\
                !CYTHON_COMPILING_IN_GRAAL
        gc = PyImport_GetModule(__pyx_mstate_global->__pyx_kp_u_gc);
        #endif
        if (unlikely(!gc)) gc = PyImport_Import(__pyx_mstate_global->__pyx_kp_u_gc);
        if (unlikely(!gc)) return -1;
        py_status = __Pyx_PyObject_CallMethod0(gc, __pyx_mstate_global->__pyx_kp_u_isenabled);
        if (unlikely(!py_status)) {
            Py_DECREF(gc);
            return -1;
        }
        gc_was_enabled = __Pyx_PyObject_IsTrue(py_status);
        Py_DECREF(py_status);
        if (gc_was_enabled > 0) {
            ret = __Pyx_PyObject_CallMethod0(gc, __pyx_mstate_global->__pyx_kp_u_disable);
            if (unlikely(!ret)) {
                Py_DECREF(gc);
                return -1;
            }
            Py_DECREF(ret);
        } else if (unlikely(gc_was_enabled == -1)) {
            Py_DECREF(gc);
            return -1;
        }
    #endif
        t->tp_flags |= Py_TPFLAGS_HEAPTYPE;
#if PY_VERSION_HEX >= 0x030A0000
        t->tp_flags |= Py_TPFLAGS_IMMUTABLETYPE;
#endif
#else
        (void)__Pyx_PyObject_CallMethod0;
#endif
    r = PyType_Ready(t);
#if !defined(PYSTON_MAJOR_VERSION)
        t->tp_flags &= ~Py_TPFLAGS_HEAPTYPE;
    #if PY_VERSION_HEX >= 0x030A00b1
        if (gc_was_enabled)
            PyGC_Enable();
    #else
        if (gc_was_enabled) {
            PyObject *tp, *v, *tb;
            PyErr_Fetch(&tp, &v, &tb);
            ret = __Pyx_PyObject_CallMethod0(gc, __pyx_mstate_global->__pyx_kp_u_enable);
            if (likely(ret || r == -1)) {
                Py_XDECREF(ret);
                PyErr_Restore(tp, v, tb);
            } else {
                Py_XDECREF(tp);
                Py_XDECREF(v);
                Py_XDECREF(tb);
                r = -1;
            }
        }
        Py_DECREF(gc);
    #endif
    }
#endif
    return r;
#endif
}

/* ListPack */
static PyObject *__Pyx_PyList_Pack(Py_ssize_t n, ...) {
    va_list va;
    PyObject *l = PyList_New(n);
    va_start(va, n);
    if (unlikely(!l)) goto end;
    for (Py_ssize_t i=0; i<n; ++i) {
        PyObject *arg = va_arg(va, PyObject*);
        Py_INCREF(arg);
        if (__Pyx_PyList_SET_ITEM(l, i, arg) != (0)) {
            Py_CLEAR(l);
            goto end;
        }
    }
    end:
    va_end(va);
    return l;
}

/* Import */
static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, int level) {
    PyObject *module = 0;
    PyObject *empty_dict = 0;
    PyObject *empty_list = 0;
    empty_dict = PyDict_New();
    if (unlikely(!empty_dict))
        goto bad;
    if (level == -1) {
        const char* package_sep = strchr(__Pyx_MODULE_NAME, '.');
        if (package_sep != (0)) {
            module = PyImport_ImportModuleLevelObject(
                name, __pyx_mstate_global->__pyx_d, empty_dict, from_list, 1);
            if (unlikely(!module)) {
                if (unlikely(!PyErr_ExceptionMatches(PyExc_ImportError)))
                    goto bad;
                PyErr_Clear();
            }
        }
        level = 0;
    }
    if (!module) {
        module = PyImport_ImportModuleLevelObject(
            name, __pyx_mstate_global->__pyx_d, empty_dict, from_list, level);
    }
bad:
    Py_XDECREF(empty_dict);
    Py_XDECREF(empty_list);
    return module;
}

/* ImportFrom */
static PyObject* __Pyx_ImportFrom(PyObject* module, PyObject* name) {
    PyObject* value = __Pyx_PyObject_GetAttrStr(module, name);
    if (unlikely(!value) && PyErr_ExceptionMatches(PyExc_AttributeError)) {
        const char* module_name_str = 0;
        PyObject* module_name = 0;
        PyObject* module_dot = 0;
        PyObject* full_name = 0;
        PyErr_Clear();
        module_name_str = PyModule_GetName(module);
        if (unlikely(!module_name_str)) { goto modbad; }
        module_name = PyUnicode_FromString(module_name_str);
        if (unlikely(!module_name)) { goto modbad; }
        module_dot = PyUnicode_Concat(module_name, __pyx_mstate_global->__pyx_kp_u__11);
        if (unlikely(!module_dot)) { goto modbad; }
        full_name = PyUnicode_Concat(module_dot, name);
        if (unlikely(!full_name)) { goto modbad; }
        #if (CYTHON_COMPILING_IN_PYPY && PYPY_VERSION_NUM  < 0x07030400) ||\
                CYTHON_COMPILING_IN_GRAAL
        {
            PyObject *modules = PyImport_GetModuleDict();
            if (unlikely(!modules))
                goto modbad;
            value = PyObject_GetItem(modules, full_name);
        }
        #else
        value = PyImport_GetModule(full_name);
        #endif
      modbad:
        Py_XDECREF(full_name);
        Py_XDECREF(module_dot);
        Py_XDECREF(module_name);
    }
    if (unlikely(!value)) {
        PyErr_Format(PyExc_ImportError, "cannot import name %S", name);
    }
    return value;
}

/* ImportDottedModule */
static PyObject *__Pyx__ImportDottedModule_Error(PyObject *name, PyObject *parts_tuple, Py_ssize_t count) {
    PyObject *partial_name = NULL, *slice = NULL, *sep = NULL;
    Py_ssize_t size;
    if (unlikely(PyErr_Occurred())) {
        PyErr_Clear();
    }
#if CYTHON_ASSUME_SAFE_SIZE
    size = PyTuple_GET_SIZE(parts_tuple);
#else
    size = PyTuple_Size(parts_tuple);
    if (size < 0) goto bad;
#endif
    if (likely(size == count)) {
        partial_name = name;
    } else {
        slice = PySequence_GetSlice(parts_tuple, 0, count);
        if (unlikely(!slice))
            goto bad;
        sep = PyUnicode_FromStringAndSize(".", 1);
        if (unlikely(!sep))
            goto bad;
        partial_name = PyUnicode_Join(sep, slice);
    }
    PyErr_Format(
        PyExc_ModuleNotFoundError,
        "No module named '%U'", partial_name);
bad:
    Py_XDECREF(sep);
    Py_XDECREF(slice);
    Py_XDECREF(partial_name);
    return NULL;
}
static PyObject *__Pyx__ImportDottedModule_Lookup(PyObject *name) {
    PyObject *imported_module;
#if (CYTHON_COMPILING_IN_PYPY && PYPY_VERSION_NUM  < 0x07030400) ||\
        CYTHON_COMPILING_IN_GRAAL
    PyObject *modules = PyImport_GetModuleDict();
    if (unlikely(!modules))
        return NULL;
    imported_module = __Pyx_PyDict_GetItemStr(modules, name);
    Py_XINCREF(imported_module);
#else
    imported_module = PyImport_GetModule(name);
#endif
    return imported_module;
}
static PyObject *__Pyx_ImportDottedModule_WalkParts(PyObject *module, PyObject *name, PyObject *parts_tuple) {
    Py_ssize_t i, nparts;
#if CYTHON_ASSUME_SAFE_SIZE
    nparts = PyTuple_GET_SIZE(parts_tuple);
#else
    nparts = PyTuple_Size(parts_tuple);
    if (nparts < 0) return NULL;
#endif
    for (i=1; i < nparts && module; i++) {
        PyObject *part, *submodule;
#if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
        part = PyTuple_GET_ITEM(parts_tuple, i);
#else
        part = __Pyx_PySequence_ITEM(parts_tuple, i);
        if (!part) return NULL;
#endif
        submodule = __Pyx_PyObject_GetAttrStrNoError(module, part);
#if !(CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS)
        Py_DECREF(part);
#endif
        Py_DECREF(module);
        module = submodule;
    }
    if (unlikely(!module)) {
        return __Pyx__ImportDottedModule_Error(name, parts_tuple, i);
    }
    return module;
}
static PyObject *__Pyx__ImportDottedModule(PyObject *name, PyObject *parts_tuple) {
    PyObject *imported_module;
    PyObject *module = __Pyx_Import(name, NULL, 0);
    if (!parts_tuple || unlikely(!module))
        return module;
    imported_module = __Pyx__ImportDottedModule_Lookup(name);
    if (likely(imported_module)) {
        Py_DECREF(module);
        return imported_module;
    }
    PyErr_Clear();
    return __Pyx_ImportDottedModule_WalkParts(module, name, parts_tuple);
}
static PyObject *__Pyx_ImportDottedModule(PyObject *name, PyObject *parts_tuple) {
#if CYTHON_COMPILING_IN_CPYTHON
    PyObject *module = __Pyx__ImportDottedModule_Lookup(name);
    if (likely(module)) {
        PyObject *spec = __Pyx_PyObject_GetAttrStrNoError(module, __pyx_mstate_global->__pyx_n_u_spec);
        if (likely(spec)) {
            PyObject *unsafe = __Pyx_PyObject_GetAttrStrNoError(spec, __pyx_mstate_global->__pyx_n_u_initializing);
            if (likely(!unsafe || !__Pyx_PyObject_IsTrue(unsafe))) {
                Py_DECREF(spec);
                spec = NULL;
            }
            Py_XDECREF(unsafe);
        }
        if (likely(!spec)) {
            PyErr_Clear();
            return module;
        }
        Py_DECREF(spec);
        Py_DECREF(module);
    } else if (PyErr_Occurred()) {
        PyErr_Clear();
    }
#endif
    return __Pyx__ImportDottedModule(name, parts_tuple);
}

/* Py3UpdateBases */
static PyObject*
__Pyx_PEP560_update_bases(PyObject *bases)
{
    Py_ssize_t i, j, size_bases;
    PyObject *base = NULL, *meth, *new_base, *result, *new_bases = NULL;
#if CYTHON_ASSUME_SAFE_SIZE
    size_bases = PyTuple_GET_SIZE(bases);
#else
    size_bases = PyTuple_Size(bases);
    if (size_bases < 0) return NULL;
#endif
    for (i = 0; i < size_bases; i++) {
#if CYTHON_AVOID_BORROWED_REFS
        Py_CLEAR(base);
#endif
#if CYTHON_ASSUME_SAFE_MACROS
        base = PyTuple_GET_ITEM(bases, i);
#else
        base = PyTuple_GetItem(bases, i);
        if (!base) goto error;
#endif
#if CYTHON_AVOID_BORROWED_REFS
        Py_INCREF(base);
#endif
        if (PyType_Check(base)) {
            if (new_bases) {
                if (PyList_Append(new_bases, base) < 0) {
                    goto error;
                }
            }
            continue;
        }
        meth = __Pyx_PyObject_GetAttrStrNoError(base, __pyx_mstate_global->__pyx_n_u_mro_entries);
        if (!meth && PyErr_Occurred()) {
            goto error;
        }
        if (!meth) {
            if (new_bases) {
                if (PyList_Append(new_bases, base) < 0) {
                    goto error;
                }
            }
            continue;
        }
        new_base = __Pyx_PyObject_CallOneArg(meth, bases);
        Py_DECREF(meth);
        if (!new_base) {
            goto error;
        }
        if (!PyTuple_Check(new_base)) {
            PyErr_SetString(PyExc_TypeError,
                            "__mro_entries__ must return a tuple");
            Py_DECREF(new_base);
            goto error;
        }
        if (!new_bases) {
            if (!(new_bases = PyList_New(i))) {
                goto error;
            }
            for (j = 0; j < i; j++) {
                PyObject *base_from_list;
#if CYTHON_ASSUME_SAFE_MACROS
                base_from_list = PyTuple_GET_ITEM(bases, j);
                PyList_SET_ITEM(new_bases, j, base_from_list);
                Py_INCREF(base_from_list);
#else
                base_from_list = PyTuple_GetItem(bases, j);
                if (!base_from_list) goto error;
                Py_INCREF(base_from_list);
                if (PyList_SetItem(new_bases, j, base_from_list) < 0) goto error;
#endif
            }
        }
#if CYTHON_ASSUME_SAFE_SIZE
        j = PyList_GET_SIZE(new_bases);
#else
        j = PyList_Size(new_bases);
        if (j < 0) goto error;
#endif
        if (PyList_SetSlice(new_bases, j, j, new_base) < 0) {
            goto error;
        }
        Py_DECREF(new_base);
    }
    if (!new_bases) {
        Py_INCREF(bases);
        return bases;
    }
    result = PyList_AsTuple(new_bases);
    Py_DECREF(new_bases);
#if CYTHON_AVOID_BORROWED_REFS
    Py_XDECREF(base);
#endif
    return result;
error:
    Py_XDECREF(new_bases);
#if CYTHON_AVOID_BORROWED_REFS
    Py_XDECREF(base);
#endif
    return NULL;
}

/* CalculateMetaclass */
static PyObject *__Pyx_CalculateMetaclass(PyTypeObject *metaclass, PyObject *bases) {
    Py_ssize_t i, nbases;
#if CYTHON_ASSUME_SAFE_SIZE
    nbases = PyTuple_GET_SIZE(bases);
#else
    nbases = PyTuple_Size(bases);
    if (nbases < 0) return NULL;
#endif
    for (i=0; i < nbases; i++) {
        PyTypeObject *tmptype;
#if CYTHON_ASSUME_SAFE_MACROS
        PyObject *tmp = PyTuple_GET_ITEM(bases, i);
#else
        PyObject *tmp = PyTuple_GetItem(bases, i);
        if (!tmp) return NULL;
#endif
        tmptype = Py_TYPE(tmp);
        if (!metaclass) {
            metaclass = tmptype;
            continue;
        }
        if (PyType_IsSubtype(metaclass, tmptype))
            continue;
        if (PyType_IsSubtype(tmptype, metaclass)) {
            metaclass = tmptype;
            continue;
        }
        PyErr_SetString(PyExc_TypeError,
                        "metaclass conflict: "
                        "the metaclass of a derived class "
                        "must be a (non-strict) subclass "
                        "of the metaclasses of all its bases");
        return NULL;
    }
    if (!metaclass) {
        metaclass = &PyType_Type;
    }
    Py_INCREF((PyObject*) metaclass);
    return (PyObject*) metaclass;
}

/* FetchSharedCythonModule */
static PyObject *__Pyx_FetchSharedCythonABIModule(void) {
    return __Pyx_PyImport_AddModuleRef(__PYX_ABI_MODULE_NAME);
}

/* dict_setdefault */
static CYTHON_INLINE PyObject *__Pyx_PyDict_SetDefault(PyObject *d, PyObject *key, PyObject *default_value,
                                                       int is_safe_type) {
    PyObject* value;
    CYTHON_MAYBE_UNUSED_VAR(is_safe_type);
#if CYTHON_COMPILING_IN_LIMITED_API
    value = PyObject_CallMethod(d, "setdefault", "OO", key, default_value);
#elif PY_VERSION_HEX >= 0x030d0000
    PyDict_SetDefaultRef(d, key, default_value, &value);
#else
    value = PyDict_SetDefault(d, key, default_value);
    if (unlikely(!value)) return NULL;
    Py_INCREF(value);
#endif
    return value;
}

/* FetchCommonType */
#if __PYX_LIMITED_VERSION_HEX < 0x030C0000
static PyObject* __Pyx_PyType_FromMetaclass(PyTypeObject *metaclass, PyObject *module, PyType_Spec *spec, PyObject *bases) {
    PyObject *result = __Pyx_PyType_FromModuleAndSpec(module, spec, bases);
    if (result && metaclass) {
        PyObject *old_tp = (PyObject*)Py_TYPE(result);
    Py_INCREF((PyObject*)metaclass);
#if __PYX_LIMITED_VERSION_HEX >= 0x03090000
        Py_SET_TYPE(result, metaclass);
#else
        result->ob_type = metaclass;
#endif
        Py_DECREF(old_tp);
    }
    return result;
}
#else
#define __Pyx_PyType_FromMetaclass(me, mo, s, b) PyType_FromMetaclass(me, mo, s, b)
#endif
static int __Pyx_VerifyCachedType(PyObject *cached_type,
                               const char *name,
                               Py_ssize_t expected_basicsize) {
    Py_ssize_t basicsize;
    if (!PyType_Check(cached_type)) {
        PyErr_Format(PyExc_TypeError,
            "Shared Cython type %.200s is not a type object", name);
        return -1;
    }
    if (expected_basicsize == 0) {
        return 0; // size is inherited, nothing useful to check
    }
#if CYTHON_COMPILING_IN_LIMITED_API
    PyObject *py_basicsize;
    py_basicsize = PyObject_GetAttrString(cached_type, "__basicsize__");
    if (unlikely(!py_basicsize)) return -1;
    basicsize = PyLong_AsSsize_t(py_basicsize);
    Py_DECREF(py_basicsize);
    py_basicsize = NULL;
    if (unlikely(basicsize == (Py_ssize_t)-1) && PyErr_Occurred()) return -1;
#else
    basicsize = ((PyTypeObject*) cached_type)->tp_basicsize;
#endif
    if (basicsize != expected_basicsize) {
        PyErr_Format(PyExc_TypeError,
            "Shared Cython type %.200s has the wrong size, try recompiling",
            name);
        return -1;
    }
    return 0;
}
static PyTypeObject *__Pyx_FetchCommonTypeFromSpec(PyTypeObject *metaclass, PyObject *module, PyType_Spec *spec, PyObject *bases) {
    PyObject *abi_module = NULL, *cached_type = NULL, *abi_module_dict, *new_cached_type, *py_object_name;
    int get_item_ref_result;
    const char* object_name = strrchr(spec->name, '.');
    object_name = object_name ? object_name+1 : spec->name;
    py_object_name = PyUnicode_FromString(object_name);
    if (!py_object_name) return NULL;
    abi_module = __Pyx_FetchSharedCythonABIModule();
    if (!abi_module) goto done;
    abi_module_dict = PyModule_GetDict(abi_module);
    if (!abi_module_dict) goto done;
    get_item_ref_result = __Pyx_PyDict_GetItemRef(abi_module_dict, py_object_name, &cached_type);
    if (get_item_ref_result == 1) {
        if (__Pyx_VerifyCachedType(
              cached_type,
              object_name,
              spec->basicsize) < 0) {
            goto bad;
        }
        goto done;
    } else if (unlikely(get_item_ref_result == -1)) {
        goto bad;
    }
    CYTHON_UNUSED_VAR(module);
    cached_type = __Pyx_PyType_FromMetaclass(metaclass, abi_module, spec, bases);
    if (unlikely(!cached_type)) goto bad;
    if (unlikely(__Pyx_fix_up_extension_type_from_spec(spec, (PyTypeObject *) cached_type) < 0)) goto bad;
    new_cached_type = __Pyx_PyDict_SetDefault(abi_module_dict, py_object_name, cached_type, 1);
    if (unlikely(new_cached_type != cached_type)) {
        if (unlikely(!new_cached_type)) goto bad;
        Py_DECREF(cached_type);
        cached_type = new_cached_type;
        if (__Pyx_VerifyCachedType(
                cached_type,
                object_name,
                spec->basicsize) < 0) {
            goto bad;
        }
        goto done;
    } else {
        Py_DECREF(new_cached_type);
    }
done:
    Py_XDECREF(abi_module);
    Py_DECREF(py_object_name);
    assert(cached_type == NULL || PyType_Check(cached_type));
    return (PyTypeObject *) cached_type;
bad:
    Py_XDECREF(cached_type);
    cached_type = NULL;
    goto done;
}

/* CommonTypesMetaclass */
PyObject* __pyx_CommonTypesMetaclass_get_module(CYTHON_UNUSED PyObject *self, CYTHON_UNUSED void* context) {
    return PyUnicode_FromString(__PYX_ABI_MODULE_NAME);
}
static PyGetSetDef __pyx_CommonTypesMetaclass_getset[] = {
    {"__module__", __pyx_CommonTypesMetaclass_get_module, NULL, NULL, NULL},
    {0, 0, 0, 0, 0}
};
static PyType_Slot __pyx_CommonTypesMetaclass_slots[] = {
    {Py_tp_getset, (void *)__pyx_CommonTypesMetaclass_getset},
    {0, 0}
};
static PyType_Spec __pyx_CommonTypesMetaclass_spec = {
    __PYX_TYPE_MODULE_PREFIX "_common_types_metatype",
    0,
    0,
#if PY_VERSION_HEX >= 0x030A0000
    Py_TPFLAGS_IMMUTABLETYPE |
    Py_TPFLAGS_DISALLOW_INSTANTIATION |
#endif
    Py_TPFLAGS_DEFAULT,
    __pyx_CommonTypesMetaclass_slots
};
static int __pyx_CommonTypesMetaclass_init(PyObject *module) {
    __pyx_mstatetype *mstate = __Pyx_PyModule_GetState(module);
    PyObject *bases = PyTuple_Pack(1, &PyType_Type);
    if (unlikely(!bases)) {
        return -1;
    }
    mstate->__pyx_CommonTypesMetaclassType = __Pyx_FetchCommonTypeFromSpec(NULL, module, &__pyx_CommonTypesMetaclass_spec, bases);
    if (unlikely(mstate->__pyx_CommonTypesMetaclassType == NULL)) {
        return -1;
    }
    return 0;
}

/* PyMethodNew */
#if CYTHON_COMPILING_IN_LIMITED_API
static PyObject *__Pyx_PyMethod_New(PyObject *func, PyObject *self, PyObject *typ) {
    PyObject *result;
    CYTHON_UNUSED_VAR(typ);
    if (!self)
        return __Pyx_NewRef(func);
    #if __PYX_LIMITED_VERSION_HEX >= 0x030C0000
    {
        PyObject *args[] = {func, self};
        result = PyObject_Vectorcall(__pyx_mstate_global->__Pyx_CachedMethodType, args, 2, NULL);
    }
    #else
    result = PyObject_CallFunctionObjArgs(__pyx_mstate_global->__Pyx_CachedMethodType, func, self, NULL);
    #endif
    return result;
}
#else
static PyObject *__Pyx_PyMethod_New(PyObject *func, PyObject *self, PyObject *typ) {
    CYTHON_UNUSED_VAR(typ);
    if (!self)
        return __Pyx_NewRef(func);
    return PyMethod_New(func, self);
}
#endif

/* PyVectorcallFastCallDict */
#if CYTHON_METH_FASTCALL && (CYTHON_VECTORCALL || CYTHON_BACKPORT_VECTORCALL)
static PyObject *__Pyx_PyVectorcall_FastCallDict_kw(PyObject *func, __pyx_vectorcallfunc vc, PyObject *const *args, size_t nargs, PyObject *kw)
{
    PyObject *res = NULL;
    PyObject *kwnames;
    PyObject **newargs;
    PyObject **kwvalues;
    Py_ssize_t i, pos;
    size_t j;
    PyObject *key, *value;
    unsigned long keys_are_strings;
    #if !CYTHON_ASSUME_SAFE_SIZE
    Py_ssize_t nkw = PyDict_Size(kw);
    if (unlikely(nkw == -1)) return NULL;
    #else
    Py_ssize_t nkw = PyDict_GET_SIZE(kw);
    #endif
    newargs = (PyObject **)PyMem_Malloc((nargs + (size_t)nkw) * sizeof(args[0]));
    if (unlikely(newargs == NULL)) {
        PyErr_NoMemory();
        return NULL;
    }
    for (j = 0; j < nargs; j++) newargs[j] = args[j];
    kwnames = PyTuple_New(nkw);
    if (unlikely(kwnames == NULL)) {
        PyMem_Free(newargs);
        return NULL;
    }
    kwvalues = newargs + nargs;
    pos = i = 0;
    keys_are_strings = Py_TPFLAGS_UNICODE_SUBCLASS;
    while (PyDict_Next(kw, &pos, &key, &value)) {
        keys_are_strings &=
        #if CYTHON_COMPILING_IN_LIMITED_API
            PyType_GetFlags(Py_TYPE(key));
        #else
            Py_TYPE(key)->tp_flags;
        #endif
        Py_INCREF(key);
        Py_INCREF(value);
        #if !CYTHON_ASSUME_SAFE_MACROS
        if (unlikely(PyTuple_SetItem(kwnames, i, key) < 0)) goto cleanup;
        #else
        PyTuple_SET_ITEM(kwnames, i, key);
        #endif
        kwvalues[i] = value;
        i++;
    }
    if (unlikely(!keys_are_strings)) {
        PyErr_SetString(PyExc_TypeError, "keywords must be strings");
        goto cleanup;
    }
    res = vc(func, newargs, nargs, kwnames);
cleanup:
    Py_DECREF(kwnames);
    for (i = 0; i < nkw; i++)
        Py_DECREF(kwvalues[i]);
    PyMem_Free(newargs);
    return res;
}
static CYTHON_INLINE PyObject *__Pyx_PyVectorcall_FastCallDict(PyObject *func, __pyx_vectorcallfunc vc, PyObject *const *args, size_t nargs, PyObject *kw)
{
    Py_ssize_t kw_size =
        likely(kw == NULL) ?
        0 :
#if !CYTHON_ASSUME_SAFE_SIZE
        PyDict_Size(kw);
#else
        PyDict_GET_SIZE(kw);
#endif
    if (kw_size == 0) {
        return vc(func, args, nargs, NULL);
    }
#if !CYTHON_ASSUME_SAFE_SIZE
    else if (unlikely(kw_size == -1)) {
        return NULL;
    }
#endif
    return __Pyx_PyVectorcall_FastCallDict_kw(func, vc, args, nargs, kw);
}
#endif

/* CythonFunctionShared */
#if CYTHON_COMPILING_IN_LIMITED_API
static CYTHON_INLINE int __Pyx__IsSameCyOrCFunctionNoMethod(PyObject *func, void (*cfunc)(void)) {
    if (__Pyx_CyFunction_Check(func)) {
        return PyCFunction_GetFunction(((__pyx_CyFunctionObject*)func)->func) == (PyCFunction) cfunc;
    } else if (PyCFunction_Check(func)) {
        return PyCFunction_GetFunction(func) == (PyCFunction) cfunc;
    }
    return 0;
}
static CYTHON_INLINE int __Pyx__IsSameCyOrCFunction(PyObject *func, void (*cfunc)(void)) {
    if ((PyObject*)Py_TYPE(func) == __pyx_mstate_global->__Pyx_CachedMethodType) {
        int result;
        PyObject *newFunc = PyObject_GetAttr(func, __pyx_mstate_global->__pyx_n_u_func);
        if (unlikely(!newFunc)) {
            PyErr_Clear(); // It's only an optimization, so don't throw an error
            return 0;
        }
        result = __Pyx__IsSameCyOrCFunctionNoMethod(newFunc, cfunc);
        Py_DECREF(newFunc);
        return result;
    }
    return __Pyx__IsSameCyOrCFunctionNoMethod(func, cfunc);
}
#else
static CYTHON_INLINE int __Pyx__IsSameCyOrCFunction(PyObject *func, void (*cfunc)(void)) {
    if (PyMethod_Check(func)) {
        func = PyMethod_GET_FUNCTION(func);
    }
    return __Pyx_CyOrPyCFunction_Check(func) && __Pyx_CyOrPyCFunction_GET_FUNCTION(func) == (PyCFunction) cfunc;
}
#endif
static CYTHON_INLINE void __Pyx__CyFunction_SetClassObj(__pyx_CyFunctionObject* f, PyObject* classobj) {
#if PY_VERSION_HEX < 0x030900B1 || CYTHON_COMPILING_IN_LIMITED_API
    __Pyx_Py_XDECREF_SET(
        __Pyx_CyFunction_GetClassObj(f),
            ((classobj) ? __Pyx_NewRef(classobj) : NULL));
#else
    __Pyx_Py_XDECREF_SET(
        ((PyCMethodObject *) (f))->mm_class,
        (PyTypeObject*)((classobj) ? __Pyx_NewRef(classobj) : NULL));
#endif
}
static PyObject *
__Pyx_CyFunction_get_doc_locked(__pyx_CyFunctionObject *op)
{
    if (unlikely(op->func_doc == NULL)) {
#if CYTHON_COMPILING_IN_LIMITED_API
        op->func_doc = PyObject_GetAttrString(op->func, "__doc__");
        if (unlikely(!op->func_doc)) return NULL;
#else
        if (((PyCFunctionObject*)op)->m_ml->ml_doc) {
            op->func_doc = PyUnicode_FromString(((PyCFunctionObject*)op)->m_ml->ml_doc);
            if (unlikely(op->func_doc == NULL))
                return NULL;
        } else {
            Py_INCREF(Py_None);
            return Py_None;
        }
#endif
    }
    Py_INCREF(op->func_doc);
    return op->func_doc;
}
static PyObject *
__Pyx_CyFunction_get_doc(__pyx_CyFunctionObject *op, void *closure) {
    PyObject *result;
    CYTHON_UNUSED_VAR(closure);
    __Pyx_BEGIN_CRITICAL_SECTION(op);
    result = __Pyx_CyFunction_get_doc_locked(op);
    __Pyx_END_CRITICAL_SECTION();
    return result;
}
static int
__Pyx_CyFunction_set_doc(__pyx_CyFunctionObject *op, PyObject *value, void *context)
{
    CYTHON_UNUSED_VAR(context);
    if (value == NULL) {
        value = Py_None;
    }
    Py_INCREF(value);
    __Pyx_BEGIN_CRITICAL_SECTION(op);
    __Pyx_Py_XDECREF_SET(op->func_doc, value);
    __Pyx_END_CRITICAL_SECTION();
    return 0;
}
static PyObject *
__Pyx_CyFunction_get_name_locked(__pyx_CyFunctionObject *op)
{
    if (unlikely(op->func_name == NULL)) {
#if CYTHON_COMPILING_IN_LIMITED_API
        op->func_name = PyObject_GetAttrString(op->func, "__name__");
#else
        op->func_name = PyUnicode_InternFromString(((PyCFunctionObject*)op)->m_ml->ml_name);
#endif
        if (unlikely(op->func_name == NULL))
            return NULL;
    }
    Py_INCREF(op->func_name);
    return op->func_name;
}
static PyObject *
__Pyx_CyFunction_get_name(__pyx_CyFunctionObject *op, void *context)
{
    PyObject *result = NULL;
    CYTHON_UNUSED_VAR(context);
    __Pyx_BEGIN_CRITICAL_SECTION(op);
    result = __Pyx_CyFunction_get_name_locked(op);
    __Pyx_END_CRITICAL_SECTION();
    return result;
}
static int
__Pyx_CyFunction_set_name(__pyx_CyFunctionObject *op, PyObject *value, void *context)
{
    CYTHON_UNUSED_VAR(context);
    if (unlikely(value == NULL || !PyUnicode_Check(value))) {
        PyErr_SetString(PyExc_TypeError,
                        "__name__ must be set to a string object");
        return -1;
    }
    Py_INCREF(value);
    __Pyx_BEGIN_CRITICAL_SECTION(op);
    __Pyx_Py_XDECREF_SET(op->func_name, value);
    __Pyx_END_CRITICAL_SECTION();
    return 0;
}
static PyObject *
__Pyx_CyFunction_get_qualname(__pyx_CyFunctionObject *op, void *context)
{
    CYTHON_UNUSED_VAR(context);
    PyObject *result;
    __Pyx_BEGIN_CRITICAL_SECTION(op);
    Py_INCREF(op->func_qualname);
    result = op->func_qualname;
    __Pyx_END_CRITICAL_SECTION();
    return result;
}
static int
__Pyx_CyFunction_set_qualname(__pyx_CyFunctionObject *op, PyObject *value, void *context)
{
    CYTHON_UNUSED_VAR(context);
    if (unlikely(value == NULL || !PyUnicode_Check(value))) {
        PyErr_SetString(PyExc_TypeError,
                        "__qualname__ must be set to a string object");
        return -1;
    }
    Py_INCREF(value);
    __Pyx_BEGIN_CRITICAL_SECTION(op);
    __Pyx_Py_XDECREF_SET(op->func_qualname, value);
    __Pyx_END_CRITICAL_SECTION();
    return 0;
}
static PyObject *
__Pyx_CyFunction_get_dict_locked(__pyx_CyFunctionObject *op)
{
    if (unlikely(op->func_dict == NULL)) {
        op->func_dict = PyDict_New();
        if (unlikely(op->func_dict == NULL))
            return NULL;
    }
    Py_INCREF(op->func_dict);
    return op->func_dict;
}
static PyObject *
__Pyx_CyFunction_get_dict(__pyx_CyFunctionObject *op, void *context)
{
    CYTHON_UNUSED_VAR(context);
    PyObject *result;
    __Pyx_BEGIN_CRITICAL_SECTION(op);
    result = __Pyx_CyFunction_get_dict_locked(op);
    __Pyx_END_CRITICAL_SECTION();
    return result;
}
static int
__Pyx_CyFunction_set_dict(__pyx_CyFunctionObject *op, PyObject *value, void *context)
{
    CYTHON_UNUSED_VAR(context);
    if (unlikely(value == NULL)) {
        PyErr_SetString(PyExc_TypeError,
               "function's dictionary may not be deleted");
        return -1;
    }
    if (unlikely(!PyDict_Check(value))) {
        PyErr_SetString(PyExc_TypeError,
               "setting function's dictionary to a non-dict");
        return -1;
    }
    Py_INCREF(value);
    __Pyx_BEGIN_CRITICAL_SECTION(op);
    __Pyx_Py_XDECREF_SET(op->func_dict, value);
    __Pyx_END_CRITICAL_SECTION();
    return 0;
}
static PyObject *
__Pyx_CyFunction_get_globals(__pyx_CyFunctionObject *op, void *context)
{
    CYTHON_UNUSED_VAR(context);
    Py_INCREF(op->func_globals);
    return op->func_globals;
}
static PyObject *
__Pyx_CyFunction_get_closure(__pyx_CyFunctionObject *op, void *context)
{
    CYTHON_UNUSED_VAR(op);
    CYTHON_UNUSED_VAR(context);
    Py_INCREF(Py_None);
    return Py_None;
}
static PyObject *
__Pyx_CyFunction_get_code(__pyx_CyFunctionObject *op, void *context)
{
    PyObject* result = (op->func_code) ? op->func_code : Py_None;
    CYTHON_UNUSED_VAR(context);
    Py_INCREF(result);
    return result;
}
static int
__Pyx_CyFunction_init_defaults(__pyx_CyFunctionObject *op) {
    int result = 0;
    PyObject *res = op->defaults_getter((PyObject *) op);
    if (unlikely(!res))
        return -1;
    #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
    op->defaults_tuple = PyTuple_GET_ITEM(res, 0);
    Py_INCREF(op->defaults_tuple);
    op->defaults_kwdict = PyTuple_GET_ITEM(res, 1);
    Py_INCREF(op->defaults_kwdict);
    #else
    op->defaults_tuple = __Pyx_PySequence_ITEM(res, 0);
    if (unlikely(!op->defaults_tuple)) result = -1;
    else {
        op->defaults_kwdict = __Pyx_PySequence_ITEM(res, 1);
        if (unlikely(!op->defaults_kwdict)) result = -1;
    }
    #endif
    Py_DECREF(res);
    return result;
}
static int
__Pyx_CyFunction_set_defaults(__pyx_CyFunctionObject *op, PyObject* value, void *context) {
    CYTHON_UNUSED_VAR(context);
    if (!value) {
        value = Py_None;
    } else if (unlikely(value != Py_None && !PyTuple_Check(value))) {
        PyErr_SetString(PyExc_TypeError,
                        "__defaults__ must be set to a tuple object");
        return -1;
    }
    PyErr_WarnEx(PyExc_RuntimeWarning, "changes to cyfunction.__defaults__ will not "
                 "currently affect the values used in function calls", 1);
    Py_INCREF(value);
    __Pyx_BEGIN_CRITICAL_SECTION(op);
    __Pyx_Py_XDECREF_SET(op->defaults_tuple, value);
    __Pyx_END_CRITICAL_SECTION();
    return 0;
}
static PyObject *
__Pyx_CyFunction_get_defaults_locked(__pyx_CyFunctionObject *op) {
    PyObject* result = op->defaults_tuple;
    if (unlikely(!result)) {
        if (op->defaults_getter) {
            if (unlikely(__Pyx_CyFunction_init_defaults(op) < 0)) return NULL;
            result = op->defaults_tuple;
        } else {
            result = Py_None;
        }
    }
    Py_INCREF(result);
    return result;
}
static PyObject *
__Pyx_CyFunction_get_defaults(__pyx_CyFunctionObject *op, void *context) {
    PyObject* result = NULL;
    CYTHON_UNUSED_VAR(context);
    __Pyx_BEGIN_CRITICAL_SECTION(op);
    result = __Pyx_CyFunction_get_defaults_locked(op);
    __Pyx_END_CRITICAL_SECTION();
    return result;
}
static int
__Pyx_CyFunction_set_kwdefaults(__pyx_CyFunctionObject *op, PyObject* value, void *context) {
    CYTHON_UNUSED_VAR(context);
    if (!value) {
        value = Py_None;
    } else if (unlikely(value != Py_None && !PyDict_Check(value))) {
        PyErr_SetString(PyExc_TypeError,
                        "__kwdefaults__ must be set to a dict object");
        return -1;
    }
    PyErr_WarnEx(PyExc_RuntimeWarning, "changes to cyfunction.__kwdefaults__ will not "
                 "currently affect the values used in function calls", 1);
    Py_INCREF(value);
    __Pyx_BEGIN_CRITICAL_SECTION(op);
    __Pyx_Py_XDECREF_SET(op->defaults_kwdict, value);
    __Pyx_END_CRITICAL_SECTION();
    return 0;
}
static PyObject *
__Pyx_CyFunction_get_kwdefaults_locked(__pyx_CyFunctionObject *op) {
    PyObject* result = op->defaults_kwdict;
    if (unlikely(!result)) {
        if (op->defaults_getter) {
            if (unlikely(__Pyx_CyFunction_init_defaults(op) < 0)) return NULL;
            result = op->defaults_kwdict;
        } else {
            result = Py_None;
        }
    }
    Py_INCREF(result);
    return result;
}
static PyObject *
__Pyx_CyFunction_get_kwdefaults(__pyx_CyFunctionObject *op, void *context) {
    PyObject* result;
    CYTHON_UNUSED_VAR(context);
    __Pyx_BEGIN_CRITICAL_SECTION(op);
    result = __Pyx_CyFunction_get_kwdefaults_locked(op);
    __Pyx_END_CRITICAL_SECTION();
    return result;
}
static int
__Pyx_CyFunction_set_annotations(__pyx_CyFunctionObject *op, PyObject* value, void *context) {
    CYTHON_UNUSED_VAR(context);
    if (!value || value == Py_None) {
        value = NULL;
    } else if (unlikely(!PyDict_Check(value))) {
        PyErr_SetString(PyExc_TypeError,
                        "__annotations__ must be set to a dict object");
        return -1;
    }
    Py_XINCREF(value);
    __Pyx_BEGIN_CRITICAL_SECTION(op);
    __Pyx_Py_XDECREF_SET(op->func_annotations, value);
    __Pyx_END_CRITICAL_SECTION();
    return 0;
}
static PyObject *
__Pyx_CyFunction_get_annotations_locked(__pyx_CyFunctionObject *op) {
    PyObject* result = op->func_annotations;
    if (unlikely(!result)) {
        result = PyDict_New();
        if (unlikely(!result)) return NULL;
        op->func_annotations = result;
    }
    Py_INCREF(result);
    return result;
}
static PyObject *
__Pyx_CyFunction_get_annotations(__pyx_CyFunctionObject *op, void *context) {
    PyObject *result;
    CYTHON_UNUSED_VAR(context);
    __Pyx_BEGIN_CRITICAL_SECTION(op);
    result = __Pyx_CyFunction_get_annotations_locked(op);
    __Pyx_END_CRITICAL_SECTION();
    return result;
}
static PyObject *
__Pyx_CyFunction_get_is_coroutine_value(__pyx_CyFunctionObject *op) {
    int is_coroutine = op->flags & __Pyx_CYFUNCTION_COROUTINE;
    if (is_coroutine) {
        PyObject *is_coroutine_value, *module, *fromlist, *marker = __pyx_mstate_global->__pyx_n_u_is_coroutine;
        fromlist = PyList_New(1);
        if (unlikely(!fromlist)) return NULL;
        Py_INCREF(marker);
#if CYTHON_ASSUME_SAFE_MACROS
        PyList_SET_ITEM(fromlist, 0, marker);
#else
        if (unlikely(PyList_SetItem(fromlist, 0, marker) < 0)) {
            Py_DECREF(marker);
            Py_DECREF(fromlist);
            return NULL;
        }
#endif
        module = PyImport_ImportModuleLevelObject(__pyx_mstate_global->__pyx_n_u_asyncio_coroutines, NULL, NULL, fromlist, 0);
        Py_DECREF(fromlist);
        if (unlikely(!module)) goto ignore;
        is_coroutine_value = __Pyx_PyObject_GetAttrStr(module, marker);
        Py_DECREF(module);
        if (likely(is_coroutine_value)) {
            return is_coroutine_value;
        }
ignore:
        PyErr_Clear();
    }
    return __Pyx_PyBool_FromLong(is_coroutine);
}
static PyObject *
__Pyx_CyFunction_get_is_coroutine(__pyx_CyFunctionObject *op, void *context) {
    PyObject *result;
    CYTHON_UNUSED_VAR(context);
    if (op->func_is_coroutine) {
        return __Pyx_NewRef(op->func_is_coroutine);
    }
    result = __Pyx_CyFunction_get_is_coroutine_value(op);
    if (unlikely(!result))
        return NULL;
    __Pyx_BEGIN_CRITICAL_SECTION(op);
    if (op->func_is_coroutine) {
        Py_DECREF(result);
        result = __Pyx_NewRef(op->func_is_coroutine);
    } else {
        op->func_is_coroutine = __Pyx_NewRef(result);
    }
    __Pyx_END_CRITICAL_SECTION();
    return result;
}
static void __Pyx_CyFunction_raise_argument_count_error(__pyx_CyFunctionObject *func, const char* message, Py_ssize_t size) {
#if CYTHON_COMPILING_IN_LIMITED_API
    PyObject *py_name = __Pyx_CyFunction_get_name(func, NULL);
    if (!py_name) return;
    PyErr_Format(PyExc_TypeError,
        "%.200S() %s (%" CYTHON_FORMAT_SSIZE_T "d given)",
        py_name, message, size);
    Py_DECREF(py_name);
#else
    const char* name = ((PyCFunctionObject*)func)->m_ml->ml_name;
    PyErr_Format(PyExc_TypeError,
        "%.200s() %s (%" CYTHON_FORMAT_SSIZE_T "d given)",
        name, message, size);
#endif
}
static void __Pyx_CyFunction_raise_type_error(__pyx_CyFunctionObject *func, const char* message) {
#if CYTHON_COMPILING_IN_LIMITED_API
    PyObject *py_name = __Pyx_CyFunction_get_name(func, NULL);
    if (!py_name) return;
    PyErr_Format(PyExc_TypeError,
        "%.200S() %s",
        py_name, message);
    Py_DECREF(py_name);
#else
    const char* name = ((PyCFunctionObject*)func)->m_ml->ml_name;
    PyErr_Format(PyExc_TypeError,
        "%.200s() %s",
        name, message);
#endif
}
#if CYTHON_COMPILING_IN_LIMITED_API
static PyObject *
__Pyx_CyFunction_get_module(__pyx_CyFunctionObject *op, void *context) {
    CYTHON_UNUSED_VAR(context);
    return PyObject_GetAttrString(op->func, "__module__");
}
static int
__Pyx_CyFunction_set_module(__pyx_CyFunctionObject *op, PyObject* value, void *context) {
    CYTHON_UNUSED_VAR(context);
    return PyObject_SetAttrString(op->func, "__module__", value);
}
#endif
static PyGetSetDef __pyx_CyFunction_getsets[] = {
    {"func_doc", (getter)__Pyx_CyFunction_get_doc, (setter)__Pyx_CyFunction_set_doc, 0, 0},
    {"__doc__",  (getter)__Pyx_CyFunction_get_doc, (setter)__Pyx_CyFunction_set_doc, 0, 0},
    {"func_name", (getter)__Pyx_CyFunction_get_name, (setter)__Pyx_CyFunction_set_name, 0, 0},
    {"__name__", (getter)__Pyx_CyFunction_get_name, (setter)__Pyx_CyFunction_set_name, 0, 0},
    {"__qualname__", (getter)__Pyx_CyFunction_get_qualname, (setter)__Pyx_CyFunction_set_qualname, 0, 0},
    {"func_dict", (getter)__Pyx_CyFunction_get_dict, (setter)__Pyx_CyFunction_set_dict, 0, 0},
    {"__dict__", (getter)__Pyx_CyFunction_get_dict, (setter)__Pyx_CyFunction_set_dict, 0, 0},
    {"func_globals", (getter)__Pyx_CyFunction_get_globals, 0, 0, 0},
    {"__globals__", (getter)__Pyx_CyFunction_get_globals, 0, 0, 0},
    {"func_closure", (getter)__Pyx_CyFunction_get_closure, 0, 0, 0},
    {"__closure__", (getter)__Pyx_CyFunction_get_closure, 0, 0, 0},
    {"func_code", (getter)__Pyx_CyFunction_get_code, 0, 0, 0},
    {"__code__", (getter)__Pyx_CyFunction_get_code, 0, 0, 0},
    {"func_defaults", (getter)__Pyx_CyFunction_get_defaults, (setter)__Pyx_CyFunction_set_defaults, 0, 0},
    {"__defaults__", (getter)__Pyx_CyFunction_get_defaults, (setter)__Pyx_CyFunction_set_defaults, 0, 0},
    {"__kwdefaults__", (getter)__Pyx_CyFunction_get_kwdefaults, (setter)__Pyx_CyFunction_set_kwdefaults, 0, 0},
    {"__annotations__", (getter)__Pyx_CyFunction_get_annotations, (setter)__Pyx_CyFunction_set_annotations, 0, 0},
    {"_is_coroutine", (getter)__Pyx_CyFunction_get_is_coroutine, 0, 0, 0},
#if CYTHON_COMPILING_IN_LIMITED_API
    {"__module__", (getter)__Pyx_CyFunction_get_module, (setter)__Pyx_CyFunction_set_module, 0, 0},
#endif
    {0, 0, 0, 0, 0}
};
static PyMemberDef __pyx_CyFunction_members[] = {
#if !CYTHON_COMPILING_IN_LIMITED_API
    {"__module__", T_OBJECT, offsetof(PyCFunctionObject, m_module), 0, 0},
#endif
    {"__dictoffset__", T_PYSSIZET, offsetof(__pyx_CyFunctionObject, func_dict), READONLY, 0},
#if CYTHON_METH_FASTCALL
#if CYTHON_BACKPORT_VECTORCALL || CYTHON_COMPILING_IN_LIMITED_API
    {"__vectorcalloffset__", T_PYSSIZET, offsetof(__pyx_CyFunctionObject, func_vectorcall), READONLY, 0},
#else
    {"__vectorcalloffset__", T_PYSSIZET, offsetof(PyCFunctionObject, vectorcall), READONLY, 0},
#endif
#if CYTHON_COMPILING_IN_LIMITED_API
    {"__weaklistoffset__", T_PYSSIZET, offsetof(__pyx_CyFunctionObject, func_weakreflist), READONLY, 0},
#else
    {"__weaklistoffset__", T_PYSSIZET, offsetof(PyCFunctionObject, m_weakreflist), READONLY, 0},
#endif
#endif
    {0, 0, 0,  0, 0}
};
static PyObject *
__Pyx_CyFunction_reduce(__pyx_CyFunctionObject *m, PyObject *args)
{
    PyObject *result = NULL;
    CYTHON_UNUSED_VAR(args);
    __Pyx_BEGIN_CRITICAL_SECTION(m);
    Py_INCREF(m->func_qualname);
    result = m->func_qualname;
    __Pyx_END_CRITICAL_SECTION();
    return result;
}
static PyMethodDef __pyx_CyFunction_methods[] = {
    {"__reduce__", (PyCFunction)__Pyx_CyFunction_reduce, METH_VARARGS, 0},
    {0, 0, 0, 0}
};
#if CYTHON_COMPILING_IN_LIMITED_API
#define __Pyx_CyFunction_weakreflist(cyfunc) ((cyfunc)->func_weakreflist)
#else
#define __Pyx_CyFunction_weakreflist(cyfunc) (((PyCFunctionObject*)cyfunc)->m_weakreflist)
#endif
static PyObject *__Pyx_CyFunction_Init(__pyx_CyFunctionObject *op, PyMethodDef *ml, int flags, PyObject* qualname,
                                       PyObject *closure, PyObject *module, PyObject* globals, PyObject* code) {
#if !CYTHON_COMPILING_IN_LIMITED_API
    PyCFunctionObject *cf = (PyCFunctionObject*) op;
#endif
    if (unlikely(op == NULL))
        return NULL;
#if CYTHON_COMPILING_IN_LIMITED_API
    op->func = PyCFunction_NewEx(ml, (PyObject*)op, module);
    if (unlikely(!op->func)) return NULL;
#endif
    op->flags = flags;
    __Pyx_CyFunction_weakreflist(op) = NULL;
#if !CYTHON_COMPILING_IN_LIMITED_API
    cf->m_ml = ml;
    cf->m_self = (PyObject *) op;
#endif
    Py_XINCREF(closure);
    op->func_closure = closure;
#if !CYTHON_COMPILING_IN_LIMITED_API
    Py_XINCREF(module);
    cf->m_module = module;
#endif
    op->func_dict = NULL;
    op->func_name = NULL;
    Py_INCREF(qualname);
    op->func_qualname = qualname;
    op->func_doc = NULL;
#if PY_VERSION_HEX < 0x030900B1 || CYTHON_COMPILING_IN_LIMITED_API
    op->func_classobj = NULL;
#else
    ((PyCMethodObject*)op)->mm_class = NULL;
#endif
    op->func_globals = globals;
    Py_INCREF(op->func_globals);
    Py_XINCREF(code);
    op->func_code = code;
    op->defaults = NULL;
    op->defaults_tuple = NULL;
    op->defaults_kwdict = NULL;
    op->defaults_getter = NULL;
    op->func_annotations = NULL;
    op->func_is_coroutine = NULL;
#if CYTHON_METH_FASTCALL
    switch (ml->ml_flags & (METH_VARARGS | METH_FASTCALL | METH_NOARGS | METH_O | METH_KEYWORDS | METH_METHOD)) {
    case METH_NOARGS:
        __Pyx_CyFunction_func_vectorcall(op) = __Pyx_CyFunction_Vectorcall_NOARGS;
        break;
    case METH_O:
        __Pyx_CyFunction_func_vectorcall(op) = __Pyx_CyFunction_Vectorcall_O;
        break;
    case METH_METHOD | METH_FASTCALL | METH_KEYWORDS:
        __Pyx_CyFunction_func_vectorcall(op) = __Pyx_CyFunction_Vectorcall_FASTCALL_KEYWORDS_METHOD;
        break;
    case METH_FASTCALL | METH_KEYWORDS:
        __Pyx_CyFunction_func_vectorcall(op) = __Pyx_CyFunction_Vectorcall_FASTCALL_KEYWORDS;
        break;
    case METH_VARARGS | METH_KEYWORDS:
        __Pyx_CyFunction_func_vectorcall(op) = NULL;
        break;
    default:
        PyErr_SetString(PyExc_SystemError, "Bad call flags for CyFunction");
        Py_DECREF(op);
        return NULL;
    }
#endif
    return (PyObject *) op;
}
static int
__Pyx_CyFunction_clear(__pyx_CyFunctionObject *m)
{
    Py_CLEAR(m->func_closure);
#if CYTHON_COMPILING_IN_LIMITED_API
    Py_CLEAR(m->func);
#else
    Py_CLEAR(((PyCFunctionObject*)m)->m_module);
#endif
    Py_CLEAR(m->func_dict);
    Py_CLEAR(m->func_name);
    Py_CLEAR(m->func_qualname);
    Py_CLEAR(m->func_doc);
    Py_CLEAR(m->func_globals);
    Py_CLEAR(m->func_code);
#if !CYTHON_COMPILING_IN_LIMITED_API
#if PY_VERSION_HEX < 0x030900B1
    Py_CLEAR(__Pyx_CyFunction_GetClassObj(m));
#else
    {
        PyObject *cls = (PyObject*) ((PyCMethodObject *) (m))->mm_class;
        ((PyCMethodObject *) (m))->mm_class = NULL;
        Py_XDECREF(cls);
    }
#endif
#endif
    Py_CLEAR(m->defaults_tuple);
    Py_CLEAR(m->defaults_kwdict);
    Py_CLEAR(m->func_annotations);
    Py_CLEAR(m->func_is_coroutine);
    Py_CLEAR(m->defaults);
    return 0;
}
static void __Pyx__CyFunction_dealloc(__pyx_CyFunctionObject *m)
{
    if (__Pyx_CyFunction_weakreflist(m) != NULL)
        PyObject_ClearWeakRefs((PyObject *) m);
    __Pyx_CyFunction_clear(m);
    __Pyx_PyHeapTypeObject_GC_Del(m);
}
static void __Pyx_CyFunction_dealloc(__pyx_CyFunctionObject *m)
{
    PyObject_GC_UnTrack(m);
    __Pyx__CyFunction_dealloc(m);
}
static int __Pyx_CyFunction_traverse(__pyx_CyFunctionObject *m, visitproc visit, void *arg)
{
    {
        int e = __Pyx_call_type_traverse((PyObject*)m, 1, visit, arg);
        if (e) return e;
    }
    Py_VISIT(m->func_closure);
#if CYTHON_COMPILING_IN_LIMITED_API
    Py_VISIT(m->func);
#else
    Py_VISIT(((PyCFunctionObject*)m)->m_module);
#endif
    Py_VISIT(m->func_dict);
    __Pyx_VISIT_CONST(m->func_name);
    __Pyx_VISIT_CONST(m->func_qualname);
    Py_VISIT(m->func_doc);
    Py_VISIT(m->func_globals);
    __Pyx_VISIT_CONST(m->func_code);
#if !CYTHON_COMPILING_IN_LIMITED_API
    Py_VISIT(__Pyx_CyFunction_GetClassObj(m));
#endif
    Py_VISIT(m->defaults_tuple);
    Py_VISIT(m->defaults_kwdict);
    Py_VISIT(m->func_is_coroutine);
    Py_VISIT(m->defaults);
    return 0;
}
static PyObject*
__Pyx_CyFunction_repr(__pyx_CyFunctionObject *op)
{
    PyObject *repr;
    __Pyx_BEGIN_CRITICAL_SECTION(op);
    repr = PyUnicode_FromFormat("<cyfunction %U at %p>",
                                op->func_qualname, (void *)op);
    __Pyx_END_CRITICAL_SECTION();
    return repr;
}
static PyObject * __Pyx_CyFunction_CallMethod(PyObject *func, PyObject *self, PyObject *arg, PyObject *kw) {
#if CYTHON_COMPILING_IN_LIMITED_API
    PyObject *f = ((__pyx_CyFunctionObject*)func)->func;
    PyCFunction meth;
    int flags;
    meth = PyCFunction_GetFunction(f);
    if (unlikely(!meth)) return NULL;
    flags = PyCFunction_GetFlags(f);
    if (unlikely(flags < 0)) return NULL;
#else
    PyCFunctionObject* f = (PyCFunctionObject*)func;
    PyCFunction meth = f->m_ml->ml_meth;
    int flags = f->m_ml->ml_flags;
#endif
    Py_ssize_t size;
    switch (flags & (METH_VARARGS | METH_KEYWORDS | METH_NOARGS | METH_O)) {
    case METH_VARARGS:
        if (likely(kw == NULL || PyDict_Size(kw) == 0))
            return (*meth)(self, arg);
        break;
    case METH_VARARGS | METH_KEYWORDS:
        return (*(PyCFunctionWithKeywords)(void(*)(void))meth)(self, arg, kw);
    case METH_NOARGS:
        if (likely(kw == NULL || PyDict_Size(kw) == 0)) {
#if CYTHON_ASSUME_SAFE_SIZE
            size = PyTuple_GET_SIZE(arg);
#else
            size = PyTuple_Size(arg);
            if (unlikely(size < 0)) return NULL;
#endif
            if (likely(size == 0))
                return (*meth)(self, NULL);
            __Pyx_CyFunction_raise_argument_count_error(
                (__pyx_CyFunctionObject*)func,
                "takes no arguments", size);
            return NULL;
        }
        break;
    case METH_O:
        if (likely(kw == NULL || PyDict_Size(kw) == 0)) {
#if CYTHON_ASSUME_SAFE_SIZE
            size = PyTuple_GET_SIZE(arg);
#else
            size = PyTuple_Size(arg);
            if (unlikely(size < 0)) return NULL;
#endif
            if (likely(size == 1)) {
                PyObject *result, *arg0;
                #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
                arg0 = PyTuple_GET_ITEM(arg, 0);
                #else
                arg0 = __Pyx_PySequence_ITEM(arg, 0); if (unlikely(!arg0)) return NULL;
                #endif
                result = (*meth)(self, arg0);
                #if !(CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS)
                Py_DECREF(arg0);
                #endif
                return result;
            }
            __Pyx_CyFunction_raise_argument_count_error(
                (__pyx_CyFunctionObject*)func,
                "takes exactly one argument", size);
            return NULL;
        }
        break;
    default:
        PyErr_SetString(PyExc_SystemError, "Bad call flags for CyFunction");
        return NULL;
    }
    __Pyx_CyFunction_raise_type_error(
        (__pyx_CyFunctionObject*)func, "takes no keyword arguments");
    return NULL;
}
static CYTHON_INLINE PyObject *__Pyx_CyFunction_Call(PyObject *func, PyObject *arg, PyObject *kw) {
    PyObject *self, *result;
#if CYTHON_COMPILING_IN_LIMITED_API
    self = PyCFunction_GetSelf(((__pyx_CyFunctionObject*)func)->func);
    if (unlikely(!self) && PyErr_Occurred()) return NULL;
#else
    self = ((PyCFunctionObject*)func)->m_self;
#endif
    result = __Pyx_CyFunction_CallMethod(func, self, arg, kw);
    return result;
}
static PyObject *__Pyx_CyFunction_CallAsMethod(PyObject *func, PyObject *args, PyObject *kw) {
    PyObject *result;
    __pyx_CyFunctionObject *cyfunc = (__pyx_CyFunctionObject *) func;
#if CYTHON_METH_FASTCALL && (CYTHON_VECTORCALL || CYTHON_BACKPORT_VECTORCALL)
     __pyx_vectorcallfunc vc = __Pyx_CyFunction_func_vectorcall(cyfunc);
    if (vc) {
#if CYTHON_ASSUME_SAFE_MACROS && CYTHON_ASSUME_SAFE_SIZE
        return __Pyx_PyVectorcall_FastCallDict(func, vc, &PyTuple_GET_ITEM(args, 0), (size_t)PyTuple_GET_SIZE(args), kw);
#else
        (void) &__Pyx_PyVectorcall_FastCallDict;
        return PyVectorcall_Call(func, args, kw);
#endif
    }
#endif
    if ((cyfunc->flags & __Pyx_CYFUNCTION_CCLASS) && !(cyfunc->flags & __Pyx_CYFUNCTION_STATICMETHOD)) {
        Py_ssize_t argc;
        PyObject *new_args;
        PyObject *self;
#if CYTHON_ASSUME_SAFE_SIZE
        argc = PyTuple_GET_SIZE(args);
#else
        argc = PyTuple_Size(args);
        if (unlikely(argc < 0)) return NULL;
#endif
        new_args = PyTuple_GetSlice(args, 1, argc);
        if (unlikely(!new_args))
            return NULL;
        self = PyTuple_GetItem(args, 0);
        if (unlikely(!self)) {
            Py_DECREF(new_args);
            PyErr_Format(PyExc_TypeError,
                         "unbound method %.200S() needs an argument",
                         cyfunc->func_qualname);
            return NULL;
        }
        result = __Pyx_CyFunction_CallMethod(func, self, new_args, kw);
        Py_DECREF(new_args);
    } else {
        result = __Pyx_CyFunction_Call(func, args, kw);
    }
    return result;
}
#if CYTHON_METH_FASTCALL && (CYTHON_VECTORCALL || CYTHON_BACKPORT_VECTORCALL)
static CYTHON_INLINE int __Pyx_CyFunction_Vectorcall_CheckArgs(__pyx_CyFunctionObject *cyfunc, Py_ssize_t nargs, PyObject *kwnames)
{
    int ret = 0;
    if ((cyfunc->flags & __Pyx_CYFUNCTION_CCLASS) && !(cyfunc->flags & __Pyx_CYFUNCTION_STATICMETHOD)) {
        if (unlikely(nargs < 1)) {
            __Pyx_CyFunction_raise_type_error(
                cyfunc, "needs an argument");
            return -1;
        }
        ret = 1;
    }
    if (unlikely(kwnames) && unlikely(__Pyx_PyTuple_GET_SIZE(kwnames))) {
        __Pyx_CyFunction_raise_type_error(
            cyfunc, "takes no keyword arguments");
        return -1;
    }
    return ret;
}
static PyObject * __Pyx_CyFunction_Vectorcall_NOARGS(PyObject *func, PyObject *const *args, size_t nargsf, PyObject *kwnames)
{
    __pyx_CyFunctionObject *cyfunc = (__pyx_CyFunctionObject *)func;
#if CYTHON_BACKPORT_VECTORCALL
    Py_ssize_t nargs = (Py_ssize_t)nargsf;
#else
    Py_ssize_t nargs = PyVectorcall_NARGS(nargsf);
#endif
    PyObject *self;
#if CYTHON_COMPILING_IN_LIMITED_API
    PyCFunction meth = PyCFunction_GetFunction(cyfunc->func);
    if (unlikely(!meth)) return NULL;
#else
    PyCFunction meth = ((PyCFunctionObject*)cyfunc)->m_ml->ml_meth;
#endif
    switch (__Pyx_CyFunction_Vectorcall_CheckArgs(cyfunc, nargs, kwnames)) {
    case 1:
        self = args[0];
        args += 1;
        nargs -= 1;
        break;
    case 0:
#if CYTHON_COMPILING_IN_LIMITED_API
        self = PyCFunction_GetSelf(((__pyx_CyFunctionObject*)cyfunc)->func);
        if (unlikely(!self) && PyErr_Occurred()) return NULL;
#else
        self = ((PyCFunctionObject*)cyfunc)->m_self;
#endif
        break;
    default:
        return NULL;
    }
    if (unlikely(nargs != 0)) {
        __Pyx_CyFunction_raise_argument_count_error(
            cyfunc, "takes no arguments", nargs);
        return NULL;
    }
    return meth(self, NULL);
}
static PyObject * __Pyx_CyFunction_Vectorcall_O(PyObject *func, PyObject *const *args, size_t nargsf, PyObject *kwnames)
{
    __pyx_CyFunctionObject *cyfunc = (__pyx_CyFunctionObject *)func;
#if CYTHON_BACKPORT_VECTORCALL
    Py_ssize_t nargs = (Py_ssize_t)nargsf;
#else
    Py_ssize_t nargs = PyVectorcall_NARGS(nargsf);
#endif
    PyObject *self;
#if CYTHON_COMPILING_IN_LIMITED_API
    PyCFunction meth = PyCFunction_GetFunction(cyfunc->func);
    if (unlikely(!meth)) return NULL;
#else
    PyCFunction meth = ((PyCFunctionObject*)cyfunc)->m_ml->ml_meth;
#endif
    switch (__Pyx_CyFunction_Vectorcall_CheckArgs(cyfunc, nargs, kwnames)) {
    case 1:
        self = args[0];
        args += 1;
        nargs -= 1;
        break;
    case 0:
#if CYTHON_COMPILING_IN_LIMITED_API
        self = PyCFunction_GetSelf(((__pyx_CyFunctionObject*)cyfunc)->func);
        if (unlikely(!self) && PyErr_Occurred()) return NULL;
#else
        self = ((PyCFunctionObject*)cyfunc)->m_self;
#endif
        break;
    default:
        return NULL;
    }
    if (unlikely(nargs != 1)) {
        __Pyx_CyFunction_raise_argument_count_error(
            cyfunc, "takes exactly one argument", nargs);
        return NULL;
    }
    return meth(self, args[0]);
}
static PyObject * __Pyx_CyFunction_Vectorcall_FASTCALL_KEYWORDS(PyObject *func, PyObject *const *args, size_t nargsf, PyObject *kwnames)
{
    __pyx_CyFunctionObject *cyfunc = (__pyx_CyFunctionObject *)func;
#if CYTHON_BACKPORT_VECTORCALL
    Py_ssize_t nargs = (Py_ssize_t)nargsf;
#else
    Py_ssize_t nargs = PyVectorcall_NARGS(nargsf);
#endif
    PyObject *self;
#if CYTHON_COMPILING_IN_LIMITED_API
    PyCFunction meth = PyCFunction_GetFunction(cyfunc->func);
    if (unlikely(!meth)) return NULL;
#else
    PyCFunction meth = ((PyCFunctionObject*)cyfunc)->m_ml->ml_meth;
#endif
    switch (__Pyx_CyFunction_Vectorcall_CheckArgs(cyfunc, nargs, NULL)) {
    case 1:
        self = args[0];
        args += 1;
        nargs -= 1;
        break;
    case 0:
#if CYTHON_COMPILING_IN_LIMITED_API
        self = PyCFunction_GetSelf(((__pyx_CyFunctionObject*)cyfunc)->func);
        if (unlikely(!self) && PyErr_Occurred()) return NULL;
#else
        self = ((PyCFunctionObject*)cyfunc)->m_self;
#endif
        break;
    default:
        return NULL;
    }
    return ((__Pyx_PyCFunctionFastWithKeywords)(void(*)(void))meth)(self, args, nargs, kwnames);
}
static PyObject * __Pyx_CyFunction_Vectorcall_FASTCALL_KEYWORDS_METHOD(PyObject *func, PyObject *const *args, size_t nargsf, PyObject *kwnames)
{
    __pyx_CyFunctionObject *cyfunc = (__pyx_CyFunctionObject *)func;
    PyTypeObject *cls = (PyTypeObject *) __Pyx_CyFunction_GetClassObj(cyfunc);
#if CYTHON_BACKPORT_VECTORCALL
    Py_ssize_t nargs = (Py_ssize_t)nargsf;
#else
    Py_ssize_t nargs = PyVectorcall_NARGS(nargsf);
#endif
    PyObject *self;
#if CYTHON_COMPILING_IN_LIMITED_API
    PyCFunction meth = PyCFunction_GetFunction(cyfunc->func);
    if (unlikely(!meth)) return NULL;
#else
    PyCFunction meth = ((PyCFunctionObject*)cyfunc)->m_ml->ml_meth;
#endif
    switch (__Pyx_CyFunction_Vectorcall_CheckArgs(cyfunc, nargs, NULL)) {
    case 1:
        self = args[0];
        args += 1;
        nargs -= 1;
        break;
    case 0:
#if CYTHON_COMPILING_IN_LIMITED_API
        self = PyCFunction_GetSelf(((__pyx_CyFunctionObject*)cyfunc)->func);
        if (unlikely(!self) && PyErr_Occurred()) return NULL;
#else
        self = ((PyCFunctionObject*)cyfunc)->m_self;
#endif
        break;
    default:
        return NULL;
    }
    return ((__Pyx_PyCMethod)(void(*)(void))meth)(self, cls, args, (size_t)nargs, kwnames);
}
#endif
static PyType_Slot __pyx_CyFunctionType_slots[] = {
    {Py_tp_dealloc, (void *)__Pyx_CyFunction_dealloc},
    {Py_tp_repr, (void *)__Pyx_CyFunction_repr},
    {Py_tp_call, (void *)__Pyx_CyFunction_CallAsMethod},
    {Py_tp_traverse, (void *)__Pyx_CyFunction_traverse},
    {Py_tp_clear, (void *)__Pyx_CyFunction_clear},
    {Py_tp_methods, (void *)__pyx_CyFunction_methods},
    {Py_tp_members, (void *)__pyx_CyFunction_members},
    {Py_tp_getset, (void *)__pyx_CyFunction_getsets},
    {Py_tp_descr_get, (void *)__Pyx_PyMethod_New},
    {0, 0},
};
static PyType_Spec __pyx_CyFunctionType_spec = {
    __PYX_TYPE_MODULE_PREFIX "cython_function_or_method",
    sizeof(__pyx_CyFunctionObject),
    0,
#ifdef Py_TPFLAGS_METHOD_DESCRIPTOR
    Py_TPFLAGS_METHOD_DESCRIPTOR |
#endif
#if CYTHON_METH_FASTCALL
#if defined(Py_TPFLAGS_HAVE_VECTORCALL)
    Py_TPFLAGS_HAVE_VECTORCALL |
#elif defined(_Py_TPFLAGS_HAVE_VECTORCALL)
    _Py_TPFLAGS_HAVE_VECTORCALL |
#endif
#endif // CYTHON_METH_FASTCALL
#if PY_VERSION_HEX >= 0x030A0000
    Py_TPFLAGS_IMMUTABLETYPE |
#endif
    Py_TPFLAGS_DEFAULT | Py_TPFLAGS_HAVE_GC | Py_TPFLAGS_BASETYPE,
    __pyx_CyFunctionType_slots
};
static int __pyx_CyFunction_init(PyObject *module) {
    __pyx_mstatetype *mstate = __Pyx_PyModule_GetState(module);
    mstate->__pyx_CyFunctionType = __Pyx_FetchCommonTypeFromSpec(
        mstate->__pyx_CommonTypesMetaclassType, module, &__pyx_CyFunctionType_spec, NULL);
    if (unlikely(mstate->__pyx_CyFunctionType == NULL)) {
        return -1;
    }
    return 0;
}
static CYTHON_INLINE PyObject *__Pyx_CyFunction_InitDefaults(PyObject *func, PyTypeObject *defaults_type) {
    __pyx_CyFunctionObject *m = (__pyx_CyFunctionObject *) func;
    m->defaults = PyObject_CallObject((PyObject*)defaults_type, NULL); // _PyObject_New(defaults_type);
    if (unlikely(!m->defaults))
        return NULL;
    return m->defaults;
}
static CYTHON_INLINE void __Pyx_CyFunction_SetDefaultsTuple(PyObject *func, PyObject *tuple) {
    __pyx_CyFunctionObject *m = (__pyx_CyFunctionObject *) func;
    m->defaults_tuple = tuple;
    Py_INCREF(tuple);
}
static CYTHON_INLINE void __Pyx_CyFunction_SetDefaultsKwDict(PyObject *func, PyObject *dict) {
    __pyx_CyFunctionObject *m = (__pyx_CyFunctionObject *) func;
    m->defaults_kwdict = dict;
    Py_INCREF(dict);
}
static CYTHON_INLINE void __Pyx_CyFunction_SetAnnotationsDict(PyObject *func, PyObject *dict) {
    __pyx_CyFunctionObject *m = (__pyx_CyFunctionObject *) func;
    m->func_annotations = dict;
    Py_INCREF(dict);
}

/* CythonFunction */
static PyObject *__Pyx_CyFunction_New(PyMethodDef *ml, int flags, PyObject* qualname,
                                      PyObject *closure, PyObject *module, PyObject* globals, PyObject* code) {
    PyObject *op = __Pyx_CyFunction_Init(
        PyObject_GC_New(__pyx_CyFunctionObject, __pyx_mstate_global->__pyx_CyFunctionType),
        ml, flags, qualname, closure, module, globals, code
    );
    if (likely(op)) {
        PyObject_GC_Track(op);
    }
    return op;
}

/* PyObjectLookupSpecial */
#if CYTHON_USE_PYTYPE_LOOKUP && CYTHON_USE_TYPE_SLOTS
static CYTHON_INLINE PyObject* __Pyx__PyObject_LookupSpecial(PyObject* obj, PyObject* attr_name, int with_error) {
    PyObject *res;
    PyTypeObject *tp = Py_TYPE(obj);
    res = _PyType_Lookup(tp, attr_name);
    if (likely(res)) {
        descrgetfunc f = Py_TYPE(res)->tp_descr_get;
        if (!f) {
            Py_INCREF(res);
        } else {
            res = f(res, obj, (PyObject *)tp);
        }
    } else if (with_error) {
        PyErr_SetObject(PyExc_AttributeError, attr_name);
    }
    return res;
}
#endif

/* Py3ClassCreate */
static PyObject *__Pyx_Py3MetaclassPrepare(PyObject *metaclass, PyObject *bases, PyObject *name,
                                           PyObject *qualname, PyObject *mkw, PyObject *modname, PyObject *doc) {
    PyObject *ns;
    if (metaclass) {
        PyObject *prep = __Pyx_PyObject_GetAttrStrNoError(metaclass, __pyx_mstate_global->__pyx_n_u_prepare);
        if (prep) {
            PyObject *pargs[3] = {NULL, name, bases};
            ns = __Pyx_PyObject_FastCallDict(prep, pargs+1, 2 | __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET, mkw);
            Py_DECREF(prep);
        } else {
            if (unlikely(PyErr_Occurred()))
                return NULL;
            ns = PyDict_New();
        }
    } else {
        ns = PyDict_New();
    }
    if (unlikely(!ns))
        return NULL;
    if (unlikely(PyObject_SetItem(ns, __pyx_mstate_global->__pyx_n_u_module, modname) < 0)) goto bad;
    if (unlikely(PyObject_SetItem(ns, __pyx_mstate_global->__pyx_n_u_qualname, qualname) < 0)) goto bad;
    if (unlikely(doc && PyObject_SetItem(ns, __pyx_mstate_global->__pyx_n_u_doc, doc) < 0)) goto bad;
    return ns;
bad:
    Py_DECREF(ns);
    return NULL;
}
static PyObject *__Pyx_Py3ClassCreate(PyObject *metaclass, PyObject *name, PyObject *bases,
                                      PyObject *dict, PyObject *mkw,
                                      int calculate_metaclass, int allow_py2_metaclass) {
    PyObject *result;
    PyObject *owned_metaclass = NULL;
    PyObject *margs[4] = {NULL, name, bases, dict};
    if (allow_py2_metaclass) {
        owned_metaclass = PyObject_GetItem(dict, __pyx_mstate_global->__pyx_n_u_metaclass);
        if (owned_metaclass) {
            metaclass = owned_metaclass;
        } else if (likely(PyErr_ExceptionMatches(PyExc_KeyError))) {
            PyErr_Clear();
        } else {
            return NULL;
        }
    }
    if (calculate_metaclass && (!metaclass || PyType_Check(metaclass))) {
        metaclass = __Pyx_CalculateMetaclass((PyTypeObject*) metaclass, bases);
        Py_XDECREF(owned_metaclass);
        if (unlikely(!metaclass))
            return NULL;
        owned_metaclass = metaclass;
    }
    result = __Pyx_PyObject_FastCallDict(metaclass, margs+1, 3 | __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET, mkw);
    Py_XDECREF(owned_metaclass);
    return result;
}

/* CLineInTraceback */
#if CYTHON_CLINE_IN_TRACEBACK && CYTHON_CLINE_IN_TRACEBACK_RUNTIME
static int __Pyx_CLineForTraceback(PyThreadState *tstate, int c_line) {
    PyObject *use_cline;
    PyObject *ptype, *pvalue, *ptraceback;
#if CYTHON_COMPILING_IN_CPYTHON
    PyObject **cython_runtime_dict;
#endif
    CYTHON_MAYBE_UNUSED_VAR(tstate);
    if (unlikely(!__pyx_mstate_global->__pyx_cython_runtime)) {
        return c_line;
    }
    __Pyx_ErrFetchInState(tstate, &ptype, &pvalue, &ptraceback);
#if CYTHON_COMPILING_IN_CPYTHON
    cython_runtime_dict = _PyObject_GetDictPtr(__pyx_mstate_global->__pyx_cython_runtime);
    if (likely(cython_runtime_dict)) {
        __Pyx_BEGIN_CRITICAL_SECTION(*cython_runtime_dict);
        __PYX_PY_DICT_LOOKUP_IF_MODIFIED(
            use_cline, *cython_runtime_dict,
            __Pyx_PyDict_GetItemStr(*cython_runtime_dict, __pyx_mstate_global->__pyx_n_u_cline_in_traceback))
        Py_XINCREF(use_cline);
        __Pyx_END_CRITICAL_SECTION();
    } else
#endif
    {
      PyObject *use_cline_obj = __Pyx_PyObject_GetAttrStrNoError(__pyx_mstate_global->__pyx_cython_runtime, __pyx_mstate_global->__pyx_n_u_cline_in_traceback);
      if (use_cline_obj) {
        use_cline = PyObject_Not(use_cline_obj) ? Py_False : Py_True;
        Py_INCREF(use_cline);
        Py_DECREF(use_cline_obj);
      } else {
        PyErr_Clear();
        use_cline = NULL;
      }
    }
    if (!use_cline) {
        c_line = 0;
        (void) PyObject_SetAttr(__pyx_mstate_global->__pyx_cython_runtime, __pyx_mstate_global->__pyx_n_u_cline_in_traceback, Py_False);
    }
    else if (use_cline == Py_False || (use_cline != Py_True && PyObject_Not(use_cline) != 0)) {
        c_line = 0;
    }
    Py_XDECREF(use_cline);
    __Pyx_ErrRestoreInState(tstate, ptype, pvalue, ptraceback);
    return c_line;
}
#endif

/* CodeObjectCache */
static int __pyx_bisect_code_objects(__Pyx_CodeObjectCacheEntry* entries, int count, int code_line) {
    int start = 0, mid = 0, end = count - 1;
    if (end >= 0 && code_line > entries[end].code_line) {
        return count;
    }
    while (start < end) {
        mid = start + (end - start) / 2;
        if (code_line < entries[mid].code_line) {
            end = mid;
        } else if (code_line > entries[mid].code_line) {
             start = mid + 1;
        } else {
            return mid;
        }
    }
    if (code_line <= entries[mid].code_line) {
        return mid;
    } else {
        return mid + 1;
    }
}
static __Pyx_CachedCodeObjectType *__pyx__find_code_object(struct __Pyx_CodeObjectCache *code_cache, int code_line) {
    __Pyx_CachedCodeObjectType* code_object;
    int pos;
    if (unlikely(!code_line) || unlikely(!code_cache->entries)) {
        return NULL;
    }
    pos = __pyx_bisect_code_objects(code_cache->entries, code_cache->count, code_line);
    if (unlikely(pos >= code_cache->count) || unlikely(code_cache->entries[pos].code_line != code_line)) {
        return NULL;
    }
    code_object = code_cache->entries[pos].code_object;
    Py_INCREF(code_object);
    return code_object;
}
static __Pyx_CachedCodeObjectType *__pyx_find_code_object(int code_line) {
#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING && !CYTHON_ATOMICS
    (void)__pyx__find_code_object;
    return NULL; // Most implementation should have atomics. But otherwise, don't make it thread-safe, just miss.
#else
    struct __Pyx_CodeObjectCache *code_cache = &__pyx_mstate_global->__pyx_code_cache;
#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING
    __pyx_nonatomic_int_type old_count = __pyx_atomic_incr_acq_rel(&code_cache->accessor_count);
    if (old_count < 0) {
        __pyx_atomic_decr_acq_rel(&code_cache->accessor_count);
        return NULL;
    }
#endif
    __Pyx_CachedCodeObjectType *result = __pyx__find_code_object(code_cache, code_line);
#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING
    __pyx_atomic_decr_acq_rel(&code_cache->accessor_count);
#endif
    return result;
#endif
}
static void __pyx__insert_code_object(struct __Pyx_CodeObjectCache *code_cache, int code_line, __Pyx_CachedCodeObjectType* code_object)
{
    int pos, i;
    __Pyx_CodeObjectCacheEntry* entries = code_cache->entries;
    if (unlikely(!code_line)) {
        return;
    }
    if (unlikely(!entries)) {
        entries = (__Pyx_CodeObjectCacheEntry*)PyMem_Malloc(64*sizeof(__Pyx_CodeObjectCacheEntry));
        if (likely(entries)) {
            code_cache->entries = entries;
            code_cache->max_count = 64;
            code_cache->count = 1;
            entries[0].code_line = code_line;
            entries[0].code_object = code_object;
            Py_INCREF(code_object);
        }
        return;
    }
    pos = __pyx_bisect_code_objects(code_cache->entries, code_cache->count, code_line);
    if ((pos < code_cache->count) && unlikely(code_cache->entries[pos].code_line == code_line)) {
        __Pyx_CachedCodeObjectType* tmp = entries[pos].code_object;
        entries[pos].code_object = code_object;
        Py_INCREF(code_object);
        Py_DECREF(tmp);
        return;
    }
    if (code_cache->count == code_cache->max_count) {
        int new_max = code_cache->max_count + 64;
        entries = (__Pyx_CodeObjectCacheEntry*)PyMem_Realloc(
            code_cache->entries, ((size_t)new_max) * sizeof(__Pyx_CodeObjectCacheEntry));
        if (unlikely(!entries)) {
            return;
        }
        code_cache->entries = entries;
        code_cache->max_count = new_max;
    }
    for (i=code_cache->count; i>pos; i--) {
        entries[i] = entries[i-1];
    }
    entries[pos].code_line = code_line;
    entries[pos].code_object = code_object;
    code_cache->count++;
    Py_INCREF(code_object);
}
static void __pyx_insert_code_object(int code_line, __Pyx_CachedCodeObjectType* code_object) {
#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING && !CYTHON_ATOMICS
    (void)__pyx__insert_code_object;
    return; // Most implementation should have atomics. But otherwise, don't make it thread-safe, just fail.
#else
    struct __Pyx_CodeObjectCache *code_cache = &__pyx_mstate_global->__pyx_code_cache;
#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING
    __pyx_nonatomic_int_type expected = 0;
    if (!__pyx_atomic_int_cmp_exchange(&code_cache->accessor_count, &expected, INT_MIN)) {
        return;
    }
#endif
    __pyx__insert_code_object(code_cache, code_line, code_object);
#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING
    __pyx_atomic_sub(&code_cache->accessor_count, INT_MIN);
#endif
#endif
}

/* AddTraceback */
#include "compile.h"
#include "frameobject.h"
#include "traceback.h"
#if PY_VERSION_HEX >= 0x030b00a6 && !CYTHON_COMPILING_IN_LIMITED_API && !defined(PYPY_VERSION)
  #ifndef Py_BUILD_CORE
    #define Py_BUILD_CORE 1
  #endif
  #include "internal/pycore_frame.h"
#endif
#if CYTHON_COMPILING_IN_LIMITED_API
static PyObject *__Pyx_PyCode_Replace_For_AddTraceback(PyObject *code, PyObject *scratch_dict,
                                                       PyObject *firstlineno, PyObject *name) {
    PyObject *replace = NULL;
    if (unlikely(PyDict_SetItemString(scratch_dict, "co_firstlineno", firstlineno))) return NULL;
    if (unlikely(PyDict_SetItemString(scratch_dict, "co_name", name))) return NULL;
    replace = PyObject_GetAttrString(code, "replace");
    if (likely(replace)) {
        PyObject *result = PyObject_Call(replace, __pyx_mstate_global->__pyx_empty_tuple, scratch_dict);
        Py_DECREF(replace);
        return result;
    }
    PyErr_Clear();
    return NULL;
}
static void __Pyx_AddTraceback(const char *funcname, int c_line,
                               int py_line, const char *filename) {
    PyObject *code_object = NULL, *py_py_line = NULL, *py_funcname = NULL, *dict = NULL;
    PyObject *replace = NULL, *getframe = NULL, *frame = NULL;
    PyObject *exc_type, *exc_value, *exc_traceback;
    int success = 0;
    if (c_line) {
        (void) __pyx_cfilenm;
        (void) __Pyx_CLineForTraceback(__Pyx_PyThreadState_Current, c_line);
    }
    PyErr_Fetch(&exc_type, &exc_value, &exc_traceback);
    code_object = __pyx_find_code_object(c_line ? -c_line : py_line);
    if (!code_object) {
        code_object = Py_CompileString("_getframe()", filename, Py_eval_input);
        if (unlikely(!code_object)) goto bad;
        py_py_line = PyLong_FromLong(py_line);
        if (unlikely(!py_py_line)) goto bad;
        py_funcname = PyUnicode_FromString(funcname);
        if (unlikely(!py_funcname)) goto bad;
        dict = PyDict_New();
        if (unlikely(!dict)) goto bad;
        {
            PyObject *old_code_object = code_object;
            code_object = __Pyx_PyCode_Replace_For_AddTraceback(code_object, dict, py_py_line, py_funcname);
            Py_DECREF(old_code_object);
        }
        if (unlikely(!code_object)) goto bad;
        __pyx_insert_code_object(c_line ? -c_line : py_line, code_object);
    } else {
        dict = PyDict_New();
    }
    getframe = PySys_GetObject("_getframe");
    if (unlikely(!getframe)) goto bad;
    if (unlikely(PyDict_SetItemString(dict, "_getframe", getframe))) goto bad;
    frame = PyEval_EvalCode(code_object, dict, dict);
    if (unlikely(!frame) || frame == Py_None) goto bad;
    success = 1;
  bad:
    PyErr_Restore(exc_type, exc_value, exc_traceback);
    Py_XDECREF(code_object);
    Py_XDECREF(py_py_line);
    Py_XDECREF(py_funcname);
    Py_XDECREF(dict);
    Py_XDECREF(replace);
    if (success) {
        PyTraceBack_Here(
            (struct _frame*)frame);
    }
    Py_XDECREF(frame);
}
#else
static PyCodeObject* __Pyx_CreateCodeObjectForTraceback(
            const char *funcname, int c_line,
            int py_line, const char *filename) {
    PyCodeObject *py_code = NULL;
    PyObject *py_funcname = NULL;
    if (c_line) {
        py_funcname = PyUnicode_FromFormat( "%s (%s:%d)", funcname, __pyx_cfilenm, c_line);
        if (!py_funcname) goto bad;
        funcname = PyUnicode_AsUTF8(py_funcname);
        if (!funcname) goto bad;
    }
    py_code = PyCode_NewEmpty(filename, funcname, py_line);
    Py_XDECREF(py_funcname);
    return py_code;
bad:
    Py_XDECREF(py_funcname);
    return NULL;
}
static void __Pyx_AddTraceback(const char *funcname, int c_line,
                               int py_line, const char *filename) {
    PyCodeObject *py_code = 0;
    PyFrameObject *py_frame = 0;
    PyThreadState *tstate = __Pyx_PyThreadState_Current;
    PyObject *ptype, *pvalue, *ptraceback;
    if (c_line) {
        c_line = __Pyx_CLineForTraceback(tstate, c_line);
    }
    py_code = __pyx_find_code_object(c_line ? -c_line : py_line);
    if (!py_code) {
        __Pyx_ErrFetchInState(tstate, &ptype, &pvalue, &ptraceback);
        py_code = __Pyx_CreateCodeObjectForTraceback(
            funcname, c_line, py_line, filename);
        if (!py_code) {
            /* If the code object creation fails, then we should clear the
               fetched exception references and propagate the new exception */
            Py_XDECREF(ptype);
            Py_XDECREF(pvalue);
            Py_XDECREF(ptraceback);
            goto bad;
        }
        __Pyx_ErrRestoreInState(tstate, ptype, pvalue, ptraceback);
        __pyx_insert_code_object(c_line ? -c_line : py_line, py_code);
    }
    py_frame = PyFrame_New(
        tstate,            /*PyThreadState *tstate,*/
        py_code,           /*PyCodeObject *code,*/
        __pyx_mstate_global->__pyx_d,    /*PyObject *globals,*/
        0                  /*PyObject *locals*/
    );
    if (!py_frame) goto bad;
    __Pyx_PyFrame_SetLineNumber(py_frame, py_line);
    PyTraceBack_Here(py_frame);
bad:
    Py_XDECREF(py_code);
    Py_XDECREF(py_frame);
}
#endif

/* CIntToPy */
static CYTHON_INLINE PyObject* __Pyx_PyLong_From_long(long value) {
#ifdef __Pyx_HAS_GCC_DIAGNOSTIC
#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wconversion"
#endif
    const long neg_one = (long) -1, const_zero = (long) 0;
#ifdef __Pyx_HAS_GCC_DIAGNOSTIC
#pragma GCC diagnostic pop
#endif
    const int is_unsigned = neg_one > const_zero;
    if (is_unsigned) {
        if (sizeof(long) < sizeof(long)) {
            return PyLong_FromLong((long) value);
        } else if (sizeof(long) <= sizeof(unsigned long)) {
            return PyLong_FromUnsignedLong((unsigned long) value);
#if defined(HAVE_LONG_LONG) && !CYTHON_COMPILING_IN_PYPY
        } else if (sizeof(long) <= sizeof(unsigned PY_LONG_LONG)) {
            return PyLong_FromUnsignedLongLong((unsigned PY_LONG_LONG) value);
#endif
        }
    } else {
        if (sizeof(long) <= sizeof(long)) {
            return PyLong_FromLong((long) value);
#ifdef HAVE_LONG_LONG
        } else if (sizeof(long) <= sizeof(PY_LONG_LONG)) {
            return PyLong_FromLongLong((PY_LONG_LONG) value);
#endif
        }
    }
    {
        unsigned char *bytes = (unsigned char *)&value;
#if !CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX >= 0x030d00A4
        if (is_unsigned) {
            return PyLong_FromUnsignedNativeBytes(bytes, sizeof(value), -1);
        } else {
            return PyLong_FromNativeBytes(bytes, sizeof(value), -1);
        }
#elif !CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030d0000
        int one = 1; int little = (int)*(unsigned char *)&one;
        return _PyLong_FromByteArray(bytes, sizeof(long),
                                     little, !is_unsigned);
#else
        int one = 1; int little = (int)*(unsigned char *)&one;
        PyObject *from_bytes, *result = NULL, *kwds = NULL;
        PyObject *py_bytes = NULL, *order_str = NULL;
        from_bytes = PyObject_GetAttrString((PyObject*)&PyLong_Type, "from_bytes");
        if (!from_bytes) return NULL;
        py_bytes = PyBytes_FromStringAndSize((char*)bytes, sizeof(long));
        if (!py_bytes) goto limited_bad;
        order_str = PyUnicode_FromString(little ? "little" : "big");
        if (!order_str) goto limited_bad;
        {
            PyObject *args[3+(CYTHON_VECTORCALL ? 1 : 0)] = { NULL, py_bytes, order_str };
            if (!is_unsigned) {
                kwds = __Pyx_MakeVectorcallBuilderKwds(1);
                if (!kwds) goto limited_bad;
                if (__Pyx_VectorcallBuilder_AddArgStr("signed", __Pyx_NewRef(Py_True), kwds, args+3, 0) < 0) goto limited_bad;
            }
            result = __Pyx_Object_Vectorcall_CallFromBuilder(from_bytes, args+1, 2 | __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET, kwds);
        }
        limited_bad:
        Py_XDECREF(kwds);
        Py_XDECREF(order_str);
        Py_XDECREF(py_bytes);
        Py_XDECREF(from_bytes);
        return result;
#endif
    }
}

/* FormatTypeName */
#if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX < 0x030d0000
static __Pyx_TypeName
__Pyx_PyType_GetFullyQualifiedName(PyTypeObject* tp)
{
    PyObject *module = NULL, *name = NULL, *result = NULL;
    #if __PYX_LIMITED_VERSION_HEX < 0x030b0000
    name = __Pyx_PyObject_GetAttrStr((PyObject *)tp,
                                               __pyx_mstate_global->__pyx_n_u_qualname);
    #else
    name = PyType_GetQualName(tp);
    #endif
    if (unlikely(name == NULL) || unlikely(!PyUnicode_Check(name))) goto bad;
    module = __Pyx_PyObject_GetAttrStr((PyObject *)tp,
                                               __pyx_mstate_global->__pyx_n_u_module);
    if (unlikely(module == NULL) || unlikely(!PyUnicode_Check(module))) goto bad;
    if (PyUnicode_CompareWithASCIIString(module, "builtins") == 0) {
        result = name;
        name = NULL;
        goto done;
    }
    result = PyUnicode_FromFormat("%U.%U", module, name);
    if (unlikely(result == NULL)) goto bad;
  done:
    Py_XDECREF(name);
    Py_XDECREF(module);
    return result;
  bad:
    PyErr_Clear();
    if (name) {
        result = name;
        name = NULL;
    } else {
        result = __Pyx_NewRef(__pyx_mstate_global->__pyx_kp_u__13);
    }
    goto done;
}
#endif

/* CIntFromPyVerify */
#define __PYX_VERIFY_RETURN_INT(target_type, func_type, func_value)\
    __PYX__VERIFY_RETURN_INT(target_type, func_type, func_value, 0)
#define __PYX_VERIFY_RETURN_INT_EXC(target_type, func_type, func_value)\
    __PYX__VERIFY_RETURN_INT(target_type, func_type, func_value, 1)
#define __PYX__VERIFY_RETURN_INT(target_type, func_type, func_value, exc)\
    {\
        func_type value = func_value;\
        if (sizeof(target_type) < sizeof(func_type)) {\
            if (unlikely(value != (func_type) (target_type) value)) {\
                func_type zero = 0;\
                if (exc && unlikely(value == (func_type)-1 && PyErr_Occurred()))\
                    return (target_type) -1;\
                if (is_unsigned && unlikely(value < zero))\
                    goto raise_neg_overflow;\
                else\
                    goto raise_overflow;\
            }\
        }\
        return (target_type) value;\
    }

/* CIntFromPy */
static CYTHON_INLINE long __Pyx_PyLong_As_long(PyObject *x) {
#ifdef __Pyx_HAS_GCC_DIAGNOSTIC
#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wconversion"
#endif
    const long neg_one = (long) -1, const_zero = (long) 0;
#ifdef __Pyx_HAS_GCC_DIAGNOSTIC
#pragma GCC diagnostic pop
#endif
    const int is_unsigned = neg_one > const_zero;
    if (unlikely(!PyLong_Check(x))) {
        long val;
        PyObject *tmp = __Pyx_PyNumber_Long(x);
        if (!tmp) return (long) -1;
        val = __Pyx_PyLong_As_long(tmp);
        Py_DECREF(tmp);
        return val;
    }
    if (is_unsigned) {
#if CYTHON_USE_PYLONG_INTERNALS
        if (unlikely(__Pyx_PyLong_IsNeg(x))) {
            goto raise_neg_overflow;
        } else if (__Pyx_PyLong_IsCompact(x)) {
            __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_upylong, __Pyx_PyLong_CompactValueUnsigned(x))
        } else {
            const digit* digits = __Pyx_PyLong_Digits(x);
            assert(__Pyx_PyLong_DigitCount(x) > 1);
            switch (__Pyx_PyLong_DigitCount(x)) {
                case 2:
                    if ((8 * sizeof(long) > 1 * PyLong_SHIFT)) {
                        if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) {
                            __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if ((8 * sizeof(long) >= 2 * PyLong_SHIFT)) {
                            return (long) (((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0]));
                        }
                    }
                    break;
                case 3:
                    if ((8 * sizeof(long) > 2 * PyLong_SHIFT)) {
                        if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) {
                            __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if ((8 * sizeof(long) >= 3 * PyLong_SHIFT)) {
                            return (long) (((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]));
                        }
                    }
                    break;
                case 4:
                    if ((8 * sizeof(long) > 3 * PyLong_SHIFT)) {
                        if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) {
                            __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if ((8 * sizeof(long) >= 4 * PyLong_SHIFT)) {
                            return (long) (((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]));
                        }
                    }
                    break;
            }
        }
#endif
#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX < 0x030C00A7
        if (unlikely(Py_SIZE(x) < 0)) {
            goto raise_neg_overflow;
        }
#else
        {
            int result = PyObject_RichCompareBool(x, Py_False, Py_LT);
            if (unlikely(result < 0))
                return (long) -1;
            if (unlikely(result == 1))
                goto raise_neg_overflow;
        }
#endif
        if ((sizeof(long) <= sizeof(unsigned long))) {
            __PYX_VERIFY_RETURN_INT_EXC(long, unsigned long, PyLong_AsUnsignedLong(x))
#ifdef HAVE_LONG_LONG
        } else if ((sizeof(long) <= sizeof(unsigned PY_LONG_LONG))) {
            __PYX_VERIFY_RETURN_INT_EXC(long, unsigned PY_LONG_LONG, PyLong_AsUnsignedLongLong(x))
#endif
        }
    } else {
#if CYTHON_USE_PYLONG_INTERNALS
        if (__Pyx_PyLong_IsCompact(x)) {
            __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x))
        } else {
            const digit* digits = __Pyx_PyLong_Digits(x);
            assert(__Pyx_PyLong_DigitCount(x) > 1);
            switch (__Pyx_PyLong_SignedDigitCount(x)) {
                case -2:
                    if ((8 * sizeof(long) - 1 > 1 * PyLong_SHIFT)) {
                        if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) {
                            __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if ((8 * sizeof(long) - 1 > 2 * PyLong_SHIFT)) {
                            return (long) (((long)-1)*(((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0])));
                        }
                    }
                    break;
                case 2:
                    if ((8 * sizeof(long) > 1 * PyLong_SHIFT)) {
                        if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) {
                            __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if ((8 * sizeof(long) - 1 > 2 * PyLong_SHIFT)) {
                            return (long) ((((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0])));
                        }
                    }
                    break;
                case -3:
                    if ((8 * sizeof(long) - 1 > 2 * PyLong_SHIFT)) {
                        if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) {
                            __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if ((8 * sizeof(long) - 1 > 3 * PyLong_SHIFT)) {
                            return (long) (((long)-1)*(((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0])));
                        }
                    }
                    break;
                case 3:
                    if ((8 * sizeof(long) > 2 * PyLong_SHIFT)) {
                        if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) {
                            __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if ((8 * sizeof(long) - 1 > 3 * PyLong_SHIFT)) {
                            return (long) ((((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0])));
                        }
                    }
                    break;
                case -4:
                    if ((8 * sizeof(long) - 1 > 3 * PyLong_SHIFT)) {
                        if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) {
                            __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if ((8 * sizeof(long) - 1 > 4 * PyLong_SHIFT)) {
                            return (long) (((long)-1)*(((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0])));
                        }
                    }
                    break;
                case 4:
                    if ((8 * sizeof(long) > 3 * PyLong_SHIFT)) {
                        if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) {
                            __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if ((8 * sizeof(long) - 1 > 4 * PyLong_SHIFT)) {
                            return (long) ((((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0])));
                        }
                    }
                    break;
            }
        }
#endif
        if ((sizeof(long) <= sizeof(long))) {
            __PYX_VERIFY_RETURN_INT_EXC(long, long, PyLong_AsLong(x))
#ifdef HAVE_LONG_LONG
        } else if ((sizeof(long) <= sizeof(PY_LONG_LONG))) {
            __PYX_VERIFY_RETURN_INT_EXC(long, PY_LONG_LONG, PyLong_AsLongLong(x))
#endif
        }
    }
    {
        long val;
        int ret = -1;
#if PY_VERSION_HEX >= 0x030d00A6 && !CYTHON_COMPILING_IN_LIMITED_API
        Py_ssize_t bytes_copied = PyLong_AsNativeBytes(
            x, &val, sizeof(val), Py_ASNATIVEBYTES_NATIVE_ENDIAN | (is_unsigned ? Py_ASNATIVEBYTES_UNSIGNED_BUFFER | Py_ASNATIVEBYTES_REJECT_NEGATIVE : 0));
        if (unlikely(bytes_copied == -1)) {
        } else if (unlikely(bytes_copied > (Py_ssize_t) sizeof(val))) {
            goto raise_overflow;
        } else {
            ret = 0;
        }
#elif PY_VERSION_HEX < 0x030d0000 && !(CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API) || defined(_PyLong_AsByteArray)
        int one = 1; int is_little = (int)*(unsigned char *)&one;
        unsigned char *bytes = (unsigned char *)&val;
        ret = _PyLong_AsByteArray((PyLongObject *)x,
                                    bytes, sizeof(val),
                                    is_little, !is_unsigned);
#else
        PyObject *v;
        PyObject *stepval = NULL, *mask = NULL, *shift = NULL;
        int bits, remaining_bits, is_negative = 0;
        int chunk_size = (sizeof(long) < 8) ? 30 : 62;
        if (likely(PyLong_CheckExact(x))) {
            v = __Pyx_NewRef(x);
        } else {
            v = PyNumber_Long(x);
            if (unlikely(!v)) return (long) -1;
            assert(PyLong_CheckExact(v));
        }
        {
            int result = PyObject_RichCompareBool(v, Py_False, Py_LT);
            if (unlikely(result < 0)) {
                Py_DECREF(v);
                return (long) -1;
            }
            is_negative = result == 1;
        }
        if (is_unsigned && unlikely(is_negative)) {
            Py_DECREF(v);
            goto raise_neg_overflow;
        } else if (is_negative) {
            stepval = PyNumber_Invert(v);
            Py_DECREF(v);
            if (unlikely(!stepval))
                return (long) -1;
        } else {
            stepval = v;
        }
        v = NULL;
        val = (long) 0;
        mask = PyLong_FromLong((1L << chunk_size) - 1); if (unlikely(!mask)) goto done;
        shift = PyLong_FromLong(chunk_size); if (unlikely(!shift)) goto done;
        for (bits = 0; bits < (int) sizeof(long) * 8 - chunk_size; bits += chunk_size) {
            PyObject *tmp, *digit;
            long idigit;
            digit = PyNumber_And(stepval, mask);
            if (unlikely(!digit)) goto done;
            idigit = PyLong_AsLong(digit);
            Py_DECREF(digit);
            if (unlikely(idigit < 0)) goto done;
            val |= ((long) idigit) << bits;
            tmp = PyNumber_Rshift(stepval, shift);
            if (unlikely(!tmp)) goto done;
            Py_DECREF(stepval); stepval = tmp;
        }
        Py_DECREF(shift); shift = NULL;
        Py_DECREF(mask); mask = NULL;
        {
            long idigit = PyLong_AsLong(stepval);
            if (unlikely(idigit < 0)) goto done;
            remaining_bits = ((int) sizeof(long) * 8) - bits - (is_unsigned ? 0 : 1);
            if (unlikely(idigit >= (1L << remaining_bits)))
                goto raise_overflow;
            val |= ((long) idigit) << bits;
        }
        if (!is_unsigned) {
            if (unlikely(val & (((long) 1) << (sizeof(long) * 8 - 1))))
                goto raise_overflow;
            if (is_negative)
                val = ~val;
        }
        ret = 0;
    done:
        Py_XDECREF(shift);
        Py_XDECREF(mask);
        Py_XDECREF(stepval);
#endif
        if (unlikely(ret))
            return (long) -1;
        return val;
    }
raise_overflow:
    PyErr_SetString(PyExc_OverflowError,
        "value too large to convert to long");
    return (long) -1;
raise_neg_overflow:
    PyErr_SetString(PyExc_OverflowError,
        "can't convert negative value to long");
    return (long) -1;
}

/* CIntFromPy */
static CYTHON_INLINE int __Pyx_PyLong_As_int(PyObject *x) {
#ifdef __Pyx_HAS_GCC_DIAGNOSTIC
#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wconversion"
#endif
    const int neg_one = (int) -1, const_zero = (int) 0;
#ifdef __Pyx_HAS_GCC_DIAGNOSTIC
#pragma GCC diagnostic pop
#endif
    const int is_unsigned = neg_one > const_zero;
    if (unlikely(!PyLong_Check(x))) {
        int val;
        PyObject *tmp = __Pyx_PyNumber_Long(x);
        if (!tmp) return (int) -1;
        val = __Pyx_PyLong_As_int(tmp);
        Py_DECREF(tmp);
        return val;
    }
    if (is_unsigned) {
#if CYTHON_USE_PYLONG_INTERNALS
        if (unlikely(__Pyx_PyLong_IsNeg(x))) {
            goto raise_neg_overflow;
        } else if (__Pyx_PyLong_IsCompact(x)) {
            __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_upylong, __Pyx_PyLong_CompactValueUnsigned(x))
        } else {
            const digit* digits = __Pyx_PyLong_Digits(x);
            assert(__Pyx_PyLong_DigitCount(x) > 1);
            switch (__Pyx_PyLong_DigitCount(x)) {
                case 2:
                    if ((8 * sizeof(int) > 1 * PyLong_SHIFT)) {
                        if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) {
                            __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if ((8 * sizeof(int) >= 2 * PyLong_SHIFT)) {
                            return (int) (((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0]));
                        }
                    }
                    break;
                case 3:
                    if ((8 * sizeof(int) > 2 * PyLong_SHIFT)) {
                        if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) {
                            __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if ((8 * sizeof(int) >= 3 * PyLong_SHIFT)) {
                            return (int) (((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]));
                        }
                    }
                    break;
                case 4:
                    if ((8 * sizeof(int) > 3 * PyLong_SHIFT)) {
                        if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) {
                            __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if ((8 * sizeof(int) >= 4 * PyLong_SHIFT)) {
                            return (int) (((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]));
                        }
                    }
                    break;
            }
        }
#endif
#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX < 0x030C00A7
        if (unlikely(Py_SIZE(x) < 0)) {
            goto raise_neg_overflow;
        }
#else
        {
            int result = PyObject_RichCompareBool(x, Py_False, Py_LT);
            if (unlikely(result < 0))
                return (int) -1;
            if (unlikely(result == 1))
                goto raise_neg_overflow;
        }
#endif
        if ((sizeof(int) <= sizeof(unsigned long))) {
            __PYX_VERIFY_RETURN_INT_EXC(int, unsigned long, PyLong_AsUnsignedLong(x))
#ifdef HAVE_LONG_LONG
        } else if ((sizeof(int) <= sizeof(unsigned PY_LONG_LONG))) {
            __PYX_VERIFY_RETURN_INT_EXC(int, unsigned PY_LONG_LONG, PyLong_AsUnsignedLongLong(x))
#endif
        }
    } else {
#if CYTHON_USE_PYLONG_INTERNALS
        if (__Pyx_PyLong_IsCompact(x)) {
            __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x))
        } else {
            const digit* digits = __Pyx_PyLong_Digits(x);
            assert(__Pyx_PyLong_DigitCount(x) > 1);
            switch (__Pyx_PyLong_SignedDigitCount(x)) {
                case -2:
                    if ((8 * sizeof(int) - 1 > 1 * PyLong_SHIFT)) {
                        if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) {
                            __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if ((8 * sizeof(int) - 1 > 2 * PyLong_SHIFT)) {
                            return (int) (((int)-1)*(((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0])));
                        }
                    }
                    break;
                case 2:
                    if ((8 * sizeof(int) > 1 * PyLong_SHIFT)) {
                        if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) {
                            __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if ((8 * sizeof(int) - 1 > 2 * PyLong_SHIFT)) {
                            return (int) ((((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0])));
                        }
                    }
                    break;
                case -3:
                    if ((8 * sizeof(int) - 1 > 2 * PyLong_SHIFT)) {
                        if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) {
                            __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if ((8 * sizeof(int) - 1 > 3 * PyLong_SHIFT)) {
                            return (int) (((int)-1)*(((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0])));
                        }
                    }
                    break;
                case 3:
                    if ((8 * sizeof(int) > 2 * PyLong_SHIFT)) {
                        if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) {
                            __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if ((8 * sizeof(int) - 1 > 3 * PyLong_SHIFT)) {
                            return (int) ((((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0])));
                        }
                    }
                    break;
                case -4:
                    if ((8 * sizeof(int) - 1 > 3 * PyLong_SHIFT)) {
                        if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) {
                            __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if ((8 * sizeof(int) - 1 > 4 * PyLong_SHIFT)) {
                            return (int) (((int)-1)*(((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0])));
                        }
                    }
                    break;
                case 4:
                    if ((8 * sizeof(int) > 3 * PyLong_SHIFT)) {
                        if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) {
                            __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if ((8 * sizeof(int) - 1 > 4 * PyLong_SHIFT)) {
                            return (int) ((((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0])));
                        }
                    }
                    break;
            }
        }
#endif
        if ((sizeof(int) <= sizeof(long))) {
            __PYX_VERIFY_RETURN_INT_EXC(int, long, PyLong_AsLong(x))
#ifdef HAVE_LONG_LONG
        } else if ((sizeof(int) <= sizeof(PY_LONG_LONG))) {
            __PYX_VERIFY_RETURN_INT_EXC(int, PY_LONG_LONG, PyLong_AsLongLong(x))
#endif
        }
    }
    {
        int val;
        int ret = -1;
#if PY_VERSION_HEX >= 0x030d00A6 && !CYTHON_COMPILING_IN_LIMITED_API
        Py_ssize_t bytes_copied = PyLong_AsNativeBytes(
            x, &val, sizeof(val), Py_ASNATIVEBYTES_NATIVE_ENDIAN | (is_unsigned ? Py_ASNATIVEBYTES_UNSIGNED_BUFFER | Py_ASNATIVEBYTES_REJECT_NEGATIVE : 0));
        if (unlikely(bytes_copied == -1)) {
        } else if (unlikely(bytes_copied > (Py_ssize_t) sizeof(val))) {
            goto raise_overflow;
        } else {
            ret = 0;
        }
#elif PY_VERSION_HEX < 0x030d0000 && !(CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API) || defined(_PyLong_AsByteArray)
        int one = 1; int is_little = (int)*(unsigned char *)&one;
        unsigned char *bytes = (unsigned char *)&val;
        ret = _PyLong_AsByteArray((PyLongObject *)x,
                                    bytes, sizeof(val),
                                    is_little, !is_unsigned);
#else
        PyObject *v;
        PyObject *stepval = NULL, *mask = NULL, *shift = NULL;
        int bits, remaining_bits, is_negative = 0;
        int chunk_size = (sizeof(long) < 8) ? 30 : 62;
        if (likely(PyLong_CheckExact(x))) {
            v = __Pyx_NewRef(x);
        } else {
            v = PyNumber_Long(x);
            if (unlikely(!v)) return (int) -1;
            assert(PyLong_CheckExact(v));
        }
        {
            int result = PyObject_RichCompareBool(v, Py_False, Py_LT);
            if (unlikely(result < 0)) {
                Py_DECREF(v);
                return (int) -1;
            }
            is_negative = result == 1;
        }
        if (is_unsigned && unlikely(is_negative)) {
            Py_DECREF(v);
            goto raise_neg_overflow;
        } else if (is_negative) {
            stepval = PyNumber_Invert(v);
            Py_DECREF(v);
            if (unlikely(!stepval))
                return (int) -1;
        } else {
            stepval = v;
        }
        v = NULL;
        val = (int) 0;
        mask = PyLong_FromLong((1L << chunk_size) - 1); if (unlikely(!mask)) goto done;
        shift = PyLong_FromLong(chunk_size); if (unlikely(!shift)) goto done;
        for (bits = 0; bits < (int) sizeof(int) * 8 - chunk_size; bits += chunk_size) {
            PyObject *tmp, *digit;
            long idigit;
            digit = PyNumber_And(stepval, mask);
            if (unlikely(!digit)) goto done;
            idigit = PyLong_AsLong(digit);
            Py_DECREF(digit);
            if (unlikely(idigit < 0)) goto done;
            val |= ((int) idigit) << bits;
            tmp = PyNumber_Rshift(stepval, shift);
            if (unlikely(!tmp)) goto done;
            Py_DECREF(stepval); stepval = tmp;
        }
        Py_DECREF(shift); shift = NULL;
        Py_DECREF(mask); mask = NULL;
        {
            long idigit = PyLong_AsLong(stepval);
            if (unlikely(idigit < 0)) goto done;
            remaining_bits = ((int) sizeof(int) * 8) - bits - (is_unsigned ? 0 : 1);
            if (unlikely(idigit >= (1L << remaining_bits)))
                goto raise_overflow;
            val |= ((int) idigit) << bits;
        }
        if (!is_unsigned) {
            if (unlikely(val & (((int) 1) << (sizeof(int) * 8 - 1))))
                goto raise_overflow;
            if (is_negative)
                val = ~val;
        }
        ret = 0;
    done:
        Py_XDECREF(shift);
        Py_XDECREF(mask);
        Py_XDECREF(stepval);
#endif
        if (unlikely(ret))
            return (int) -1;
        return val;
    }
raise_overflow:
    PyErr_SetString(PyExc_OverflowError,
        "value too large to convert to int");
    return (int) -1;
raise_neg_overflow:
    PyErr_SetString(PyExc_OverflowError,
        "can't convert negative value to int");
    return (int) -1;
}

/* FastTypeChecks */
#if CYTHON_COMPILING_IN_CPYTHON
static int __Pyx_InBases(PyTypeObject *a, PyTypeObject *b) {
    while (a) {
        a = __Pyx_PyType_GetSlot(a, tp_base, PyTypeObject*);
        if (a == b)
            return 1;
    }
    return b == &PyBaseObject_Type;
}
static CYTHON_INLINE int __Pyx_IsSubtype(PyTypeObject *a, PyTypeObject *b) {
    PyObject *mro;
    if (a == b) return 1;
    mro = a->tp_mro;
    if (likely(mro)) {
        Py_ssize_t i, n;
        n = PyTuple_GET_SIZE(mro);
        for (i = 0; i < n; i++) {
            if (PyTuple_GET_ITEM(mro, i) == (PyObject *)b)
                return 1;
        }
        return 0;
    }
    return __Pyx_InBases(a, b);
}
static CYTHON_INLINE int __Pyx_IsAnySubtype2(PyTypeObject *cls, PyTypeObject *a, PyTypeObject *b) {
    PyObject *mro;
    if (cls == a || cls == b) return 1;
    mro = cls->tp_mro;
    if (likely(mro)) {
        Py_ssize_t i, n;
        n = PyTuple_GET_SIZE(mro);
        for (i = 0; i < n; i++) {
            PyObject *base = PyTuple_GET_ITEM(mro, i);
            if (base == (PyObject *)a || base == (PyObject *)b)
                return 1;
        }
        return 0;
    }
    return __Pyx_InBases(cls, a) || __Pyx_InBases(cls, b);
}
static CYTHON_INLINE int __Pyx_inner_PyErr_GivenExceptionMatches2(PyObject *err, PyObject* exc_type1, PyObject *exc_type2) {
    if (exc_type1) {
        return __Pyx_IsAnySubtype2((PyTypeObject*)err, (PyTypeObject*)exc_type1, (PyTypeObject*)exc_type2);
    } else {
        return __Pyx_IsSubtype((PyTypeObject*)err, (PyTypeObject*)exc_type2);
    }
}
static int __Pyx_PyErr_GivenExceptionMatchesTuple(PyObject *exc_type, PyObject *tuple) {
    Py_ssize_t i, n;
    assert(PyExceptionClass_Check(exc_type));
    n = PyTuple_GET_SIZE(tuple);
    for (i=0; i<n; i++) {
        if (exc_type == PyTuple_GET_ITEM(tuple, i)) return 1;
    }
    for (i=0; i<n; i++) {
        PyObject *t = PyTuple_GET_ITEM(tuple, i);
        if (likely(PyExceptionClass_Check(t))) {
            if (__Pyx_inner_PyErr_GivenExceptionMatches2(exc_type, NULL, t)) return 1;
        } else {
        }
    }
    return 0;
}
static CYTHON_INLINE int __Pyx_PyErr_GivenExceptionMatches(PyObject *err, PyObject* exc_type) {
    if (likely(err == exc_type)) return 1;
    if (likely(PyExceptionClass_Check(err))) {
        if (likely(PyExceptionClass_Check(exc_type))) {
            return __Pyx_inner_PyErr_GivenExceptionMatches2(err, NULL, exc_type);
        } else if (likely(PyTuple_Check(exc_type))) {
            return __Pyx_PyErr_GivenExceptionMatchesTuple(err, exc_type);
        } else {
        }
    }
    return PyErr_GivenExceptionMatches(err, exc_type);
}
static CYTHON_INLINE int __Pyx_PyErr_GivenExceptionMatches2(PyObject *err, PyObject *exc_type1, PyObject *exc_type2) {
    assert(PyExceptionClass_Check(exc_type1));
    assert(PyExceptionClass_Check(exc_type2));
    if (likely(err == exc_type1 || err == exc_type2)) return 1;
    if (likely(PyExceptionClass_Check(err))) {
        return __Pyx_inner_PyErr_GivenExceptionMatches2(err, exc_type1, exc_type2);
    }
    return (PyErr_GivenExceptionMatches(err, exc_type1) || PyErr_GivenExceptionMatches(err, exc_type2));
}
#endif

/* IterNextPlain */
#if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX < 0x030A0000
static PyObject *__Pyx_GetBuiltinNext_LimitedAPI(void) {
    if (unlikely(!__pyx_mstate_global->__Pyx_GetBuiltinNext_LimitedAPI_cache))
        __pyx_mstate_global->__Pyx_GetBuiltinNext_LimitedAPI_cache = __Pyx_GetBuiltinName(__pyx_mstate_global->__pyx_n_u_next);
    return __pyx_mstate_global->__Pyx_GetBuiltinNext_LimitedAPI_cache;
}
#endif
static CYTHON_INLINE PyObject *__Pyx_PyIter_Next_Plain(PyObject *iterator) {
#if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX < 0x030A0000
    PyObject *result;
    PyObject *next = __Pyx_GetBuiltinNext_LimitedAPI();
    if (unlikely(!next)) return NULL;
    result = PyObject_CallFunctionObjArgs(next, iterator, NULL);
    return result;
#else
    (void)__Pyx_GetBuiltinName; // only for early limited API
    iternextfunc iternext = __Pyx_PyObject_GetIterNextFunc(iterator);
    assert(iternext);
    return iternext(iterator);
#endif
}

/* PyObjectCallMethod1 */
#if !(CYTHON_VECTORCALL && __PYX_LIMITED_VERSION_HEX >= 0x030C0000)
static PyObject* __Pyx__PyObject_CallMethod1(PyObject* method, PyObject* arg) {
    PyObject *result = __Pyx_PyObject_CallOneArg(method, arg);
    Py_DECREF(method);
    return result;
}
#endif
static PyObject* __Pyx_PyObject_CallMethod1(PyObject* obj, PyObject* method_name, PyObject* arg) {
#if CYTHON_VECTORCALL && __PYX_LIMITED_VERSION_HEX >= 0x030C0000
    PyObject *args[2] = {obj, arg};
    (void) __Pyx_PyObject_GetMethod;
    (void) __Pyx_PyObject_CallOneArg;
    (void) __Pyx_PyObject_Call2Args;
    return PyObject_VectorcallMethod(method_name, args, 2 | PY_VECTORCALL_ARGUMENTS_OFFSET, NULL);
#else
    PyObject *method = NULL, *result;
    int is_method = __Pyx_PyObject_GetMethod(obj, method_name, &method);
    if (likely(is_method)) {
        result = __Pyx_PyObject_Call2Args(method, obj, arg);
        Py_DECREF(method);
        return result;
    }
    if (unlikely(!method)) return NULL;
    return __Pyx__PyObject_CallMethod1(method, arg);
#endif
}

/* ReturnWithStopIteration */
static void __Pyx__ReturnWithStopIteration(PyObject* value, int async);
static CYTHON_INLINE void __Pyx_ReturnWithStopIteration(PyObject* value, int async, int iternext) {
    if (value == Py_None) {
        if (async || !iternext)
            PyErr_SetNone(async ? PyExc_StopAsyncIteration : PyExc_StopIteration);
        return;
    }
    __Pyx__ReturnWithStopIteration(value, async);
}
static void __Pyx__ReturnWithStopIteration(PyObject* value, int async) {
#if CYTHON_COMPILING_IN_CPYTHON
    __Pyx_PyThreadState_declare
#endif
    PyObject *exc;
    PyObject *exc_type = async ? PyExc_StopAsyncIteration : PyExc_StopIteration;
#if CYTHON_COMPILING_IN_CPYTHON
    if ((PY_VERSION_HEX >= (0x030C00A6)) || unlikely(PyTuple_Check(value) || PyExceptionInstance_Check(value))) {
        if (PY_VERSION_HEX >= (0x030e00A1)) {
            exc = __Pyx_PyObject_CallOneArg(exc_type, value);
        } else {
            PyObject *args_tuple = PyTuple_New(1);
            if (unlikely(!args_tuple)) return;
            Py_INCREF(value);
            PyTuple_SET_ITEM(args_tuple, 0, value);
            exc = PyObject_Call(exc_type, args_tuple, NULL);
            Py_DECREF(args_tuple);
        }
        if (unlikely(!exc)) return;
    } else {
        Py_INCREF(value);
        exc = value;
    }
    #if CYTHON_FAST_THREAD_STATE
    __Pyx_PyThreadState_assign
    #if CYTHON_USE_EXC_INFO_STACK
    if (!__pyx_tstate->exc_info->exc_value)
    #else
    if (!__pyx_tstate->exc_type)
    #endif
    {
        Py_INCREF(exc_type);
        __Pyx_ErrRestore(exc_type, exc, NULL);
        return;
    }
    #endif
#else
    exc = __Pyx_PyObject_CallOneArg(exc_type, value);
    if (unlikely(!exc)) return;
#endif
    PyErr_SetObject(exc_type, exc);
    Py_DECREF(exc);
}

/* CoroutineBase */
#if !CYTHON_COMPILING_IN_LIMITED_API
#include <frameobject.h>
#if PY_VERSION_HEX >= 0x030b00a6 && !defined(PYPY_VERSION)
  #ifndef Py_BUILD_CORE
    #define Py_BUILD_CORE 1
  #endif
  #include "internal/pycore_frame.h"
#endif
#endif // CYTHON_COMPILING_IN_LIMITED_API
static CYTHON_INLINE void
__Pyx_Coroutine_Undelegate(__pyx_CoroutineObject *gen) {
#if CYTHON_USE_AM_SEND
    gen->yieldfrom_am_send = NULL;
#endif
    Py_CLEAR(gen->yieldfrom);
}
static int __Pyx_PyGen__FetchStopIterationValue(PyThreadState *__pyx_tstate, PyObject **pvalue) {
    PyObject *et, *ev, *tb;
    PyObject *value = NULL;
    CYTHON_UNUSED_VAR(__pyx_tstate);
    __Pyx_ErrFetch(&et, &ev, &tb);
    if (!et) {
        Py_XDECREF(tb);
        Py_XDECREF(ev);
        Py_INCREF(Py_None);
        *pvalue = Py_None;
        return 0;
    }
    if (likely(et == PyExc_StopIteration)) {
        if (!ev) {
            Py_INCREF(Py_None);
            value = Py_None;
        }
        else if (likely(__Pyx_IS_TYPE(ev, (PyTypeObject*)PyExc_StopIteration))) {
            #if CYTHON_COMPILING_IN_LIMITED_API || CYTHON_COMPILING_IN_GRAAL
            value = PyObject_GetAttr(ev, __pyx_mstate_global->__pyx_n_u_value);
            if (unlikely(!value)) goto limited_api_failure;
            #else
            value = ((PyStopIterationObject *)ev)->value;
            Py_INCREF(value);
            #endif
            Py_DECREF(ev);
        }
        else if (unlikely(PyTuple_Check(ev))) {
            Py_ssize_t tuple_size = __Pyx_PyTuple_GET_SIZE(ev);
            #if !CYTHON_ASSUME_SAFE_SIZE
            if (unlikely(tuple_size < 0)) {
                Py_XDECREF(tb);
                Py_DECREF(ev);
                Py_DECREF(et);
                return -1;
            }
            #endif
            if (tuple_size >= 1) {
#if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
                value = PyTuple_GET_ITEM(ev, 0);
                Py_INCREF(value);
#elif CYTHON_ASSUME_SAFE_MACROS
                value = PySequence_ITEM(ev, 0);
#else
                value = PySequence_GetItem(ev, 0);
                if (!value) goto limited_api_failure;
#endif
            } else {
                Py_INCREF(Py_None);
                value = Py_None;
            }
            Py_DECREF(ev);
        }
        else if (!__Pyx_TypeCheck(ev, (PyTypeObject*)PyExc_StopIteration)) {
            value = ev;
        }
        if (likely(value)) {
            Py_XDECREF(tb);
            Py_DECREF(et);
            *pvalue = value;
            return 0;
        }
    } else if (!__Pyx_PyErr_GivenExceptionMatches(et, PyExc_StopIteration)) {
        __Pyx_ErrRestore(et, ev, tb);
        return -1;
    }
    PyErr_NormalizeException(&et, &ev, &tb);
    if (unlikely(!PyObject_TypeCheck(ev, (PyTypeObject*)PyExc_StopIteration))) {
        __Pyx_ErrRestore(et, ev, tb);
        return -1;
    }
    Py_XDECREF(tb);
    Py_DECREF(et);
#if CYTHON_COMPILING_IN_LIMITED_API
    value = PyObject_GetAttr(ev, __pyx_mstate_global->__pyx_n_u_value);
#else
    value = ((PyStopIterationObject *)ev)->value;
    Py_INCREF(value);
#endif
    Py_DECREF(ev);
#if CYTHON_COMPILING_IN_LIMITED_API
    if (unlikely(!value)) return -1;
#endif
    *pvalue = value;
    return 0;
#if CYTHON_COMPILING_IN_LIMITED_API || CYTHON_COMPILING_IN_GRAAL || !CYTHON_ASSUME_SAFE_MACROS
  limited_api_failure:
    Py_XDECREF(et);
    Py_XDECREF(tb);
    Py_XDECREF(ev);
    return -1;
#endif
}
static CYTHON_INLINE
__Pyx_PySendResult __Pyx_Coroutine_status_from_result(PyObject **retval) {
    if (*retval) {
        return PYGEN_NEXT;
    } else if (likely(__Pyx_PyGen__FetchStopIterationValue(__Pyx_PyThreadState_Current, retval) == 0)) {
        return PYGEN_RETURN;
    } else {
        return PYGEN_ERROR;
    }
}
static CYTHON_INLINE
void __Pyx_Coroutine_ExceptionClear(__Pyx_ExcInfoStruct *exc_state) {
#if PY_VERSION_HEX >= 0x030B00a4
    Py_CLEAR(exc_state->exc_value);
#else
    PyObject *t, *v, *tb;
    t = exc_state->exc_type;
    v = exc_state->exc_value;
    tb = exc_state->exc_traceback;
    exc_state->exc_type = NULL;
    exc_state->exc_value = NULL;
    exc_state->exc_traceback = NULL;
    Py_XDECREF(t);
    Py_XDECREF(v);
    Py_XDECREF(tb);
#endif
}
#define __Pyx_Coroutine_AlreadyRunningError(gen)  (__Pyx__Coroutine_AlreadyRunningError(gen), (PyObject*)NULL)
static void __Pyx__Coroutine_AlreadyRunningError(__pyx_CoroutineObject *gen) {
    const char *msg;
    CYTHON_MAYBE_UNUSED_VAR(gen);
    if ((0)) {
    #ifdef __Pyx_Coroutine_USED
    } else if (__Pyx_Coroutine_Check((PyObject*)gen)) {
        msg = "coroutine already executing";
    #endif
    #ifdef __Pyx_AsyncGen_USED
    } else if (__Pyx_AsyncGen_CheckExact((PyObject*)gen)) {
        msg = "async generator already executing";
    #endif
    } else {
        msg = "generator already executing";
    }
    PyErr_SetString(PyExc_ValueError, msg);
}
static void __Pyx_Coroutine_AlreadyTerminatedError(PyObject *gen, PyObject *value, int closing) {
    CYTHON_MAYBE_UNUSED_VAR(gen);
    CYTHON_MAYBE_UNUSED_VAR(closing);
    #ifdef __Pyx_Coroutine_USED
    if (!closing && __Pyx_Coroutine_Check(gen)) {
        PyErr_SetString(PyExc_RuntimeError, "cannot reuse already awaited coroutine");
    } else
    #endif
    if (value) {
        #ifdef __Pyx_AsyncGen_USED
        if (__Pyx_AsyncGen_CheckExact(gen))
            PyErr_SetNone(PyExc_StopAsyncIteration);
        else
        #endif
        PyErr_SetNone(PyExc_StopIteration);
    }
}
static
__Pyx_PySendResult __Pyx_Coroutine_SendEx(__pyx_CoroutineObject *self, PyObject *value, PyObject **result, int closing) {
    __Pyx_PyThreadState_declare
    PyThreadState *tstate;
    __Pyx_ExcInfoStruct *exc_state;
    PyObject *retval;
    assert(__Pyx_Coroutine_get_is_running(self));  // Callers should ensure is_running
    if (unlikely(self->resume_label == -1)) {
        __Pyx_Coroutine_AlreadyTerminatedError((PyObject*)self, value, closing);
        return PYGEN_ERROR;
    }
#if CYTHON_FAST_THREAD_STATE
    __Pyx_PyThreadState_assign
    tstate = __pyx_tstate;
#else
    tstate = __Pyx_PyThreadState_Current;
#endif
    exc_state = &self->gi_exc_state;
    if (exc_state->exc_value) {
        #if CYTHON_COMPILING_IN_LIMITED_API || CYTHON_COMPILING_IN_PYPY
        #else
        PyObject *exc_tb;
        #if PY_VERSION_HEX >= 0x030B00a4 && !CYTHON_COMPILING_IN_CPYTHON
        exc_tb = PyException_GetTraceback(exc_state->exc_value);
        #elif PY_VERSION_HEX >= 0x030B00a4
        exc_tb = ((PyBaseExceptionObject*) exc_state->exc_value)->traceback;
        #else
        exc_tb = exc_state->exc_traceback;
        #endif
        if (exc_tb) {
            PyTracebackObject *tb = (PyTracebackObject *) exc_tb;
            PyFrameObject *f = tb->tb_frame;
            assert(f->f_back == NULL);
            #if PY_VERSION_HEX >= 0x030B00A1
            f->f_back = PyThreadState_GetFrame(tstate);
            #else
            Py_XINCREF(tstate->frame);
            f->f_back = tstate->frame;
            #endif
            #if PY_VERSION_HEX >= 0x030B00a4 && !CYTHON_COMPILING_IN_CPYTHON
            Py_DECREF(exc_tb);
            #endif
        }
        #endif
    }
#if CYTHON_USE_EXC_INFO_STACK
    exc_state->previous_item = tstate->exc_info;
    tstate->exc_info = exc_state;
#else
    if (exc_state->exc_type) {
        __Pyx_ExceptionSwap(&exc_state->exc_type, &exc_state->exc_value, &exc_state->exc_traceback);
    } else {
        __Pyx_Coroutine_ExceptionClear(exc_state);
        __Pyx_ExceptionSave(&exc_state->exc_type, &exc_state->exc_value, &exc_state->exc_traceback);
    }
#endif
    retval = self->body(self, tstate, value);
#if CYTHON_USE_EXC_INFO_STACK
    exc_state = &self->gi_exc_state;
    tstate->exc_info = exc_state->previous_item;
    exc_state->previous_item = NULL;
    __Pyx_Coroutine_ResetFrameBackpointer(exc_state);
#endif
    *result = retval;
    if (self->resume_label == -1) {
        return likely(retval) ? PYGEN_RETURN : PYGEN_ERROR;
    }
    return PYGEN_NEXT;
}
static CYTHON_INLINE void __Pyx_Coroutine_ResetFrameBackpointer(__Pyx_ExcInfoStruct *exc_state) {
#if CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API
    CYTHON_UNUSED_VAR(exc_state);
#else
    PyObject *exc_tb;
    #if PY_VERSION_HEX >= 0x030B00a4
    if (!exc_state->exc_value) return;
    exc_tb = PyException_GetTraceback(exc_state->exc_value);
    #else
    exc_tb = exc_state->exc_traceback;
    #endif
    if (likely(exc_tb)) {
        PyTracebackObject *tb = (PyTracebackObject *) exc_tb;
        PyFrameObject *f = tb->tb_frame;
        Py_CLEAR(f->f_back);
        #if PY_VERSION_HEX >= 0x030B00a4
        Py_DECREF(exc_tb);
        #endif
    }
#endif
}
#define __Pyx_Coroutine_MethodReturnFromResult(gen, result, retval, iternext)\
    ((result) == PYGEN_NEXT ? (retval) : __Pyx__Coroutine_MethodReturnFromResult(gen, result, retval, iternext))
static PyObject *
__Pyx__Coroutine_MethodReturnFromResult(PyObject* gen, __Pyx_PySendResult result, PyObject *retval, int iternext) {
    CYTHON_MAYBE_UNUSED_VAR(gen);
    if (likely(result == PYGEN_RETURN)) {
        int is_async = 0;
        #ifdef __Pyx_AsyncGen_USED
        is_async = __Pyx_AsyncGen_CheckExact(gen);
        #endif
        __Pyx_ReturnWithStopIteration(retval, is_async, iternext);
        Py_XDECREF(retval);
    }
    return NULL;
}
#if CYTHON_COMPILING_IN_CPYTHON
static CYTHON_INLINE
PyObject *__Pyx_PyGen_Send(PyGenObject *gen, PyObject *arg) {
#if PY_VERSION_HEX <= 0x030A00A1
    return _PyGen_Send(gen, arg);
#else
    PyObject *result;
    if (PyIter_Send((PyObject*)gen, arg ? arg : Py_None, &result) == PYGEN_RETURN) {
        if (PyAsyncGen_CheckExact(gen)) {
            assert(result == Py_None);
            PyErr_SetNone(PyExc_StopAsyncIteration);
        }
        else if (result == Py_None) {
            PyErr_SetNone(PyExc_StopIteration);
        }
        else {
#if PY_VERSION_HEX < 0x030d00A1
            _PyGen_SetStopIterationValue(result);
#else
            if (!PyTuple_Check(result) && !PyExceptionInstance_Check(result)) {
                PyErr_SetObject(PyExc_StopIteration, result);
            } else {
                PyObject *exc = __Pyx_PyObject_CallOneArg(PyExc_StopIteration, result);
                if (likely(exc != NULL)) {
                    PyErr_SetObject(PyExc_StopIteration, exc);
                    Py_DECREF(exc);
                }
            }
#endif
        }
        Py_DECREF(result);
        result = NULL;
    }
    return result;
#endif
}
#endif
static CYTHON_INLINE __Pyx_PySendResult
__Pyx_Coroutine_FinishDelegation(__pyx_CoroutineObject *gen, PyObject** retval) {
    __Pyx_PySendResult result;
    PyObject *val = NULL;
    assert(__Pyx_Coroutine_get_is_running(gen));
    __Pyx_Coroutine_Undelegate(gen);
    __Pyx_PyGen__FetchStopIterationValue(__Pyx_PyThreadState_Current, &val);
    result = __Pyx_Coroutine_SendEx(gen, val, retval, 0);
    Py_XDECREF(val);
    return result;
}
#if CYTHON_USE_AM_SEND
static __Pyx_PySendResult
__Pyx_Coroutine_SendToDelegate(__pyx_CoroutineObject *gen, __Pyx_pyiter_sendfunc gen_am_send, PyObject *value, PyObject **retval) {
    PyObject *ret = NULL;
    __Pyx_PySendResult delegate_result, result;
    assert(__Pyx_Coroutine_get_is_running(gen));
    delegate_result = gen_am_send(gen->yieldfrom, value, &ret);
    if (delegate_result == PYGEN_NEXT) {
        assert (ret != NULL);
        *retval = ret;
        return PYGEN_NEXT;
    }
    assert (delegate_result != PYGEN_ERROR || ret == NULL);
    __Pyx_Coroutine_Undelegate(gen);
    result = __Pyx_Coroutine_SendEx(gen, ret, retval, 0);
    Py_XDECREF(ret);
    return result;
}
#endif
static PyObject *__Pyx_Coroutine_Send(PyObject *self, PyObject *value) {
    PyObject *retval = NULL;
    __Pyx_PySendResult result = __Pyx_Coroutine_AmSend(self, value, &retval);
    return __Pyx_Coroutine_MethodReturnFromResult(self, result, retval, 0);
}
static __Pyx_PySendResult
__Pyx_Coroutine_AmSend(PyObject *self, PyObject *value, PyObject **retval) {
    __Pyx_PySendResult result;
    __pyx_CoroutineObject *gen = (__pyx_CoroutineObject*) self;
    if (unlikely(__Pyx_Coroutine_test_and_set_is_running(gen))) {
        *retval = __Pyx_Coroutine_AlreadyRunningError(gen);
        return PYGEN_ERROR;
    }
    #if CYTHON_USE_AM_SEND
    if (gen->yieldfrom_am_send) {
        result = __Pyx_Coroutine_SendToDelegate(gen, gen->yieldfrom_am_send, value, retval);
    } else
    #endif
    if (gen->yieldfrom) {
        PyObject *yf = gen->yieldfrom;
        PyObject *ret;
      #if !CYTHON_USE_AM_SEND
        #ifdef __Pyx_Generator_USED
        if (__Pyx_Generator_CheckExact(yf)) {
            ret = __Pyx_Coroutine_Send(yf, value);
        } else
        #endif
        #ifdef __Pyx_Coroutine_USED
        if (__Pyx_Coroutine_Check(yf)) {
            ret = __Pyx_Coroutine_Send(yf, value);
        } else
        #endif
        #ifdef __Pyx_AsyncGen_USED
        if (__pyx_PyAsyncGenASend_CheckExact(yf)) {
            ret = __Pyx_async_gen_asend_send(yf, value);
        } else
        #endif
        #if CYTHON_COMPILING_IN_CPYTHON
        if (PyGen_CheckExact(yf)) {
            ret = __Pyx_PyGen_Send((PyGenObject*)yf, value == Py_None ? NULL : value);
        } else
        if (PyCoro_CheckExact(yf)) {
            ret = __Pyx_PyGen_Send((PyGenObject*)yf, value == Py_None ? NULL : value);
        } else
        #endif
      #endif
        {
            #if !CYTHON_COMPILING_IN_LIMITED_API || __PYX_LIMITED_VERSION_HEX >= 0x03080000
            if (value == Py_None && PyIter_Check(yf))
                ret = __Pyx_PyIter_Next_Plain(yf);
            else
            #endif
                ret = __Pyx_PyObject_CallMethod1(yf, __pyx_mstate_global->__pyx_n_u_send, value);
        }
        if (likely(ret)) {
            __Pyx_Coroutine_unset_is_running(gen);
            *retval = ret;
            return PYGEN_NEXT;
        }
        result = __Pyx_Coroutine_FinishDelegation(gen, retval);
    } else {
        result = __Pyx_Coroutine_SendEx(gen, value, retval, 0);
    }
    __Pyx_Coroutine_unset_is_running(gen);
    return result;
}
static int __Pyx_Coroutine_CloseIter(__pyx_CoroutineObject *gen, PyObject *yf) {
    __Pyx_PySendResult result;
    PyObject *retval = NULL;
    CYTHON_UNUSED_VAR(gen);
    assert(__Pyx_Coroutine_get_is_running(gen));
    #ifdef __Pyx_Generator_USED
    if (__Pyx_Generator_CheckExact(yf)) {
        result = __Pyx_Coroutine_Close(yf, &retval);
    } else
    #endif
    #ifdef __Pyx_Coroutine_USED
    if (__Pyx_Coroutine_Check(yf)) {
        result = __Pyx_Coroutine_Close(yf, &retval);
    } else
    if (__Pyx_CoroutineAwait_CheckExact(yf)) {
        result = __Pyx_CoroutineAwait_Close((__pyx_CoroutineAwaitObject*)yf);
    } else
    #endif
    #ifdef __Pyx_AsyncGen_USED
    if (__pyx_PyAsyncGenASend_CheckExact(yf)) {
        retval = __Pyx_async_gen_asend_close(yf, NULL);
        result = PYGEN_RETURN;
    } else
    if (__pyx_PyAsyncGenAThrow_CheckExact(yf)) {
        retval = __Pyx_async_gen_athrow_close(yf, NULL);
        result = PYGEN_RETURN;
    } else
    #endif
    {
        PyObject *meth;
        result = PYGEN_RETURN;
        meth = __Pyx_PyObject_GetAttrStrNoError(yf, __pyx_mstate_global->__pyx_n_u_close);
        if (unlikely(!meth)) {
            if (unlikely(PyErr_Occurred())) {
                PyErr_WriteUnraisable(yf);
            }
        } else {
            retval = __Pyx_PyObject_CallNoArg(meth);
            Py_DECREF(meth);
            if (unlikely(!retval)) {
                result = PYGEN_ERROR;
            }
        }
    }
    Py_XDECREF(retval);
    return result == PYGEN_ERROR ? -1 : 0;
}
static PyObject *__Pyx_Generator_Next(PyObject *self) {
    __Pyx_PySendResult result;
    PyObject *retval = NULL;
    __pyx_CoroutineObject *gen = (__pyx_CoroutineObject*) self;
    if (unlikely(__Pyx_Coroutine_test_and_set_is_running(gen))) {
        return __Pyx_Coroutine_AlreadyRunningError(gen);
    }
    #if CYTHON_USE_AM_SEND
    if (gen->yieldfrom_am_send) {
        result = __Pyx_Coroutine_SendToDelegate(gen, gen->yieldfrom_am_send, Py_None, &retval);
    } else
    #endif
    if (gen->yieldfrom) {
        PyObject *yf = gen->yieldfrom;
        PyObject *ret;
        #ifdef __Pyx_Generator_USED
        if (__Pyx_Generator_CheckExact(yf)) {
            ret = __Pyx_Generator_Next(yf);
        } else
        #endif
        #ifdef __Pyx_Coroutine_USED
        if (__Pyx_Coroutine_CheckExact(yf)) {
            ret = __Pyx_Coroutine_Send(yf, Py_None);
        } else
        #endif
        #if CYTHON_COMPILING_IN_CPYTHON && (PY_VERSION_HEX < 0x030A00A3 || !CYTHON_USE_AM_SEND)
        if (PyGen_CheckExact(yf)) {
            ret = __Pyx_PyGen_Send((PyGenObject*)yf, NULL);
        } else
        #endif
            ret = __Pyx_PyIter_Next_Plain(yf);
        if (likely(ret)) {
            __Pyx_Coroutine_unset_is_running(gen);
            return ret;
        }
        result = __Pyx_Coroutine_FinishDelegation(gen, &retval);
    } else {
        result = __Pyx_Coroutine_SendEx(gen, Py_None, &retval, 0);
    }
    __Pyx_Coroutine_unset_is_running(gen);
    return __Pyx_Coroutine_MethodReturnFromResult(self, result, retval, 1);
}
static PyObject *__Pyx_Coroutine_Close_Method(PyObject *self, PyObject *arg) {
    PyObject *retval = NULL;
    __Pyx_PySendResult result;
    CYTHON_UNUSED_VAR(arg);
    result = __Pyx_Coroutine_Close(self, &retval);
    if (unlikely(result == PYGEN_ERROR))
        return NULL;
    Py_XDECREF(retval);
    Py_RETURN_NONE;
}
static __Pyx_PySendResult
__Pyx_Coroutine_Close(PyObject *self, PyObject **retval) {
    __pyx_CoroutineObject *gen = (__pyx_CoroutineObject *) self;
    __Pyx_PySendResult result;
    PyObject *yf;
    int err = 0;
    if (unlikely(__Pyx_Coroutine_test_and_set_is_running(gen))) {
        *retval = __Pyx_Coroutine_AlreadyRunningError(gen);
        return PYGEN_ERROR;
    }
    yf = gen->yieldfrom;
    if (yf) {
        Py_INCREF(yf);
        err = __Pyx_Coroutine_CloseIter(gen, yf);
        __Pyx_Coroutine_Undelegate(gen);
        Py_DECREF(yf);
    }
    if (err == 0)
        PyErr_SetNone(PyExc_GeneratorExit);
    result = __Pyx_Coroutine_SendEx(gen, NULL, retval, 1);
    if (result == PYGEN_ERROR) {
        __Pyx_PyThreadState_declare
        __Pyx_PyThreadState_assign
        __Pyx_Coroutine_unset_is_running(gen);
        if (!__Pyx_PyErr_Occurred()) {
            return PYGEN_RETURN;
        } else if (likely(__Pyx_PyErr_ExceptionMatches2(PyExc_GeneratorExit, PyExc_StopIteration))) {
            __Pyx_PyErr_Clear();
            return PYGEN_RETURN;
        }
        return PYGEN_ERROR;
    } else if (likely(result == PYGEN_RETURN && *retval == Py_None)) {
        __Pyx_Coroutine_unset_is_running(gen);
        return PYGEN_RETURN;
    } else {
        const char *msg;
        Py_DECREF(*retval);
        *retval = NULL;
        if ((0)) {
        #ifdef __Pyx_Coroutine_USED
        } else if (__Pyx_Coroutine_Check(self)) {
            msg = "coroutine ignored GeneratorExit";
        #endif
        #ifdef __Pyx_AsyncGen_USED
        } else if (__Pyx_AsyncGen_CheckExact(self)) {
            msg = "async generator ignored GeneratorExit";
        #endif
        } else {
            msg = "generator ignored GeneratorExit";
        }
        PyErr_SetString(PyExc_RuntimeError, msg);
        __Pyx_Coroutine_unset_is_running(gen);
        return PYGEN_ERROR;
    }
}
static PyObject *__Pyx__Coroutine_Throw(PyObject *self, PyObject *typ, PyObject *val, PyObject *tb,
                                        PyObject *args, int close_on_genexit) {
    __pyx_CoroutineObject *gen = (__pyx_CoroutineObject *) self;
    PyObject *yf;
    if (unlikely(__Pyx_Coroutine_test_and_set_is_running(gen)))
        return __Pyx_Coroutine_AlreadyRunningError(gen);
    yf = gen->yieldfrom;
    if (yf) {
        __Pyx_PySendResult result;
        PyObject *ret;
        Py_INCREF(yf);
        if (__Pyx_PyErr_GivenExceptionMatches(typ, PyExc_GeneratorExit) && close_on_genexit) {
            int err = __Pyx_Coroutine_CloseIter(gen, yf);
            Py_DECREF(yf);
            __Pyx_Coroutine_Undelegate(gen);
            if (err < 0)
                goto propagate_exception;
            goto throw_here;
        }
        if (0
        #ifdef __Pyx_Generator_USED
            || __Pyx_Generator_CheckExact(yf)
        #endif
        #ifdef __Pyx_Coroutine_USED
            || __Pyx_Coroutine_Check(yf)
        #endif
            ) {
            ret = __Pyx__Coroutine_Throw(yf, typ, val, tb, args, close_on_genexit);
        #ifdef __Pyx_Coroutine_USED
        } else if (__Pyx_CoroutineAwait_CheckExact(yf)) {
            ret = __Pyx__Coroutine_Throw(((__pyx_CoroutineAwaitObject*)yf)->coroutine, typ, val, tb, args, close_on_genexit);
        #endif
        } else {
            PyObject *meth = __Pyx_PyObject_GetAttrStrNoError(yf, __pyx_mstate_global->__pyx_n_u_throw);
            if (unlikely(!meth)) {
                Py_DECREF(yf);
                if (unlikely(PyErr_Occurred())) {
                    __Pyx_Coroutine_unset_is_running(gen);
                    return NULL;
                }
                __Pyx_Coroutine_Undelegate(gen);
                goto throw_here;
            }
            if (likely(args)) {
                ret = __Pyx_PyObject_Call(meth, args, NULL);
            } else {
                PyObject *cargs[4] = {NULL, typ, val, tb};
                ret = __Pyx_PyObject_FastCall(meth, cargs+1, 3 | __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET);
            }
            Py_DECREF(meth);
        }
        Py_DECREF(yf);
        if (ret) {
            __Pyx_Coroutine_unset_is_running(gen);
            return ret;
        }
        result = __Pyx_Coroutine_FinishDelegation(gen, &ret);
        __Pyx_Coroutine_unset_is_running(gen);
        return __Pyx_Coroutine_MethodReturnFromResult(self, result, ret, 0);
    }
throw_here:
    __Pyx_Raise(typ, val, tb, NULL);
propagate_exception:
    {
        PyObject *retval = NULL;
        __Pyx_PySendResult result = __Pyx_Coroutine_SendEx(gen, NULL, &retval, 0);
        __Pyx_Coroutine_unset_is_running(gen);
        return __Pyx_Coroutine_MethodReturnFromResult(self, result, retval, 0);
    }
}
static PyObject *__Pyx_Coroutine_Throw(PyObject *self, PyObject *args) {
    PyObject *typ;
    PyObject *val = NULL;
    PyObject *tb = NULL;
    if (unlikely(!PyArg_UnpackTuple(args, "throw", 1, 3, &typ, &val, &tb)))
        return NULL;
    return __Pyx__Coroutine_Throw(self, typ, val, tb, args, 1);
}
static CYTHON_INLINE int __Pyx_Coroutine_traverse_excstate(__Pyx_ExcInfoStruct *exc_state, visitproc visit, void *arg) {
#if PY_VERSION_HEX >= 0x030B00a4
    Py_VISIT(exc_state->exc_value);
#else
    Py_VISIT(exc_state->exc_type);
    Py_VISIT(exc_state->exc_value);
    Py_VISIT(exc_state->exc_traceback);
#endif
    return 0;
}
static int __Pyx_Coroutine_traverse(__pyx_CoroutineObject *gen, visitproc visit, void *arg) {
    {
        int e = __Pyx_call_type_traverse((PyObject*)gen, 1, visit, arg);
        if (e) return e;
    }
    Py_VISIT(gen->closure);
    Py_VISIT(gen->classobj);
    Py_VISIT(gen->yieldfrom);
    return __Pyx_Coroutine_traverse_excstate(&gen->gi_exc_state, visit, arg);
}
static int __Pyx_Coroutine_clear(PyObject *self) {
    __pyx_CoroutineObject *gen = (__pyx_CoroutineObject *) self;
    Py_CLEAR(gen->closure);
    Py_CLEAR(gen->classobj);
    __Pyx_Coroutine_Undelegate(gen);
    __Pyx_Coroutine_ExceptionClear(&gen->gi_exc_state);
#ifdef __Pyx_AsyncGen_USED
    if (__Pyx_AsyncGen_CheckExact(self)) {
        Py_CLEAR(((__pyx_PyAsyncGenObject*)gen)->ag_finalizer);
    }
#endif
    Py_CLEAR(gen->gi_code);
    Py_CLEAR(gen->gi_frame);
    Py_CLEAR(gen->gi_name);
    Py_CLEAR(gen->gi_qualname);
    Py_CLEAR(gen->gi_modulename);
    return 0;
}
static void __Pyx_Coroutine_dealloc(PyObject *self) {
    __pyx_CoroutineObject *gen = (__pyx_CoroutineObject *) self;
    PyObject_GC_UnTrack(gen);
    if (gen->gi_weakreflist != NULL)
        PyObject_ClearWeakRefs(self);
    if (gen->resume_label >= 0) {
        PyObject_GC_Track(self);
#if CYTHON_USE_TP_FINALIZE
        if (unlikely(PyObject_CallFinalizerFromDealloc(self)))
#else
        {
            destructor del = __Pyx_PyObject_GetSlot(gen, tp_del, destructor);
            if (del) del(self);
        }
        if (unlikely(Py_REFCNT(self) > 0))
#endif
        {
            return;
        }
        PyObject_GC_UnTrack(self);
    }
#ifdef __Pyx_AsyncGen_USED
    if (__Pyx_AsyncGen_CheckExact(self)) {
        /* We have to handle this case for asynchronous generators
           right here, because this code has to be between UNTRACK
           and GC_Del. */
        Py_CLEAR(((__pyx_PyAsyncGenObject*)self)->ag_finalizer);
    }
#endif
    __Pyx_Coroutine_clear(self);
    __Pyx_PyHeapTypeObject_GC_Del(gen);
}
#if CYTHON_USE_TP_FINALIZE
static void __Pyx_Coroutine_del(PyObject *self) {
    PyObject *error_type, *error_value, *error_traceback;
    __pyx_CoroutineObject *gen = (__pyx_CoroutineObject *) self;
    __Pyx_PyThreadState_declare
    if (gen->resume_label < 0) {
        return;
    }
    __Pyx_PyThreadState_assign
    __Pyx_ErrFetch(&error_type, &error_value, &error_traceback);
#ifdef __Pyx_AsyncGen_USED
    if (__Pyx_AsyncGen_CheckExact(self)) {
        __pyx_PyAsyncGenObject *agen = (__pyx_PyAsyncGenObject*)self;
        PyObject *finalizer = agen->ag_finalizer;
        if (finalizer && !agen->ag_closed) {
            PyObject *res = __Pyx_PyObject_CallOneArg(finalizer, self);
            if (unlikely(!res)) {
                PyErr_WriteUnraisable(self);
            } else {
                Py_DECREF(res);
            }
            __Pyx_ErrRestore(error_type, error_value, error_traceback);
            return;
        }
    }
#endif
    if (unlikely(gen->resume_label == 0 && !error_value)) {
#ifdef __Pyx_Coroutine_USED
#ifdef __Pyx_Generator_USED
    if (!__Pyx_Generator_CheckExact(self))
#endif
        {
        PyObject_GC_UnTrack(self);
        if (unlikely(PyErr_WarnFormat(PyExc_RuntimeWarning, 1, "coroutine '%.50S' was never awaited", gen->gi_qualname) < 0))
            PyErr_WriteUnraisable(self);
        PyObject_GC_Track(self);
        }
#endif
    } else {
        PyObject *retval = NULL;
        __Pyx_PySendResult result = __Pyx_Coroutine_Close(self, &retval);
        if (result == PYGEN_ERROR) {
            PyErr_WriteUnraisable(self);
        } else {
            Py_XDECREF(retval);
        }
    }
    __Pyx_ErrRestore(error_type, error_value, error_traceback);
}
#endif
static PyObject *
__Pyx_Coroutine_get_name(__pyx_CoroutineObject *self, void *context)
{
    PyObject *name = self->gi_name;
    CYTHON_UNUSED_VAR(context);
    if (unlikely(!name)) name = Py_None;
    Py_INCREF(name);
    return name;
}
static int
__Pyx_Coroutine_set_name(__pyx_CoroutineObject *self, PyObject *value, void *context)
{
    CYTHON_UNUSED_VAR(context);
    if (unlikely(value == NULL || !PyUnicode_Check(value))) {
        PyErr_SetString(PyExc_TypeError,
                        "__name__ must be set to a string object");
        return -1;
    }
    Py_INCREF(value);
    __Pyx_Py_XDECREF_SET(self->gi_name, value);
    return 0;
}
static PyObject *
__Pyx_Coroutine_get_qualname(__pyx_CoroutineObject *self, void *context)
{
    PyObject *name = self->gi_qualname;
    CYTHON_UNUSED_VAR(context);
    if (unlikely(!name)) name = Py_None;
    Py_INCREF(name);
    return name;
}
static int
__Pyx_Coroutine_set_qualname(__pyx_CoroutineObject *self, PyObject *value, void *context)
{
    CYTHON_UNUSED_VAR(context);
    if (unlikely(value == NULL || !PyUnicode_Check(value))) {
        PyErr_SetString(PyExc_TypeError,
                        "__qualname__ must be set to a string object");
        return -1;
    }
    Py_INCREF(value);
    __Pyx_Py_XDECREF_SET(self->gi_qualname, value);
    return 0;
}
static PyObject *
__Pyx__Coroutine_get_frame(__pyx_CoroutineObject *self)
{
#if !CYTHON_COMPILING_IN_LIMITED_API
    PyObject *frame;
    #if PY_VERSION_HEX >= 0x030d0000
    Py_BEGIN_CRITICAL_SECTION(self);
    #endif
    frame = self->gi_frame;
    if (!frame) {
        if (unlikely(!self->gi_code)) {
            Py_RETURN_NONE;
        }
        PyObject *globals = PyDict_New();
        if (unlikely(!globals)) return NULL;
        frame = (PyObject *) PyFrame_New(
            PyThreadState_Get(),            /*PyThreadState *tstate,*/
            (PyCodeObject*) self->gi_code,  /*PyCodeObject *code,*/
            globals,                        /*PyObject *globals,*/
            0                               /*PyObject *locals*/
        );
        Py_DECREF(globals);
        if (unlikely(!frame))
            return NULL;
        if (unlikely(self->gi_frame)) {
            Py_DECREF(frame);
            frame = self->gi_frame;
        } else {
            self->gi_frame = frame;
        }
    }
    Py_INCREF(frame);
    #if PY_VERSION_HEX >= 0x030d0000
    Py_END_CRITICAL_SECTION();
    #endif
    return frame;
#else
    CYTHON_UNUSED_VAR(self);
    Py_RETURN_NONE;
#endif
}
static PyObject *
__Pyx_Coroutine_get_frame(__pyx_CoroutineObject *self, void *context) {
    CYTHON_UNUSED_VAR(context);
    PyObject *frame = self->gi_frame;
    if (frame)
        return __Pyx_NewRef(frame);
    return __Pyx__Coroutine_get_frame(self);
}
static __pyx_CoroutineObject *__Pyx__Coroutine_New(
            PyTypeObject* type, __pyx_coroutine_body_t body, PyObject *code, PyObject *closure,
            PyObject *name, PyObject *qualname, PyObject *module_name) {
    __pyx_CoroutineObject *gen = PyObject_GC_New(__pyx_CoroutineObject, type);
    if (unlikely(!gen))
        return NULL;
    return __Pyx__Coroutine_NewInit(gen, body, code, closure, name, qualname, module_name);
}
static __pyx_CoroutineObject *__Pyx__Coroutine_NewInit(
            __pyx_CoroutineObject *gen, __pyx_coroutine_body_t body, PyObject *code, PyObject *closure,
            PyObject *name, PyObject *qualname, PyObject *module_name) {
    gen->body = body;
    gen->closure = closure;
    Py_XINCREF(closure);
    gen->is_running = 0;
    gen->resume_label = 0;
    gen->classobj = NULL;
    gen->yieldfrom = NULL;
    gen->yieldfrom_am_send = NULL;
    #if PY_VERSION_HEX >= 0x030B00a4 && !CYTHON_COMPILING_IN_LIMITED_API
    gen->gi_exc_state.exc_value = NULL;
    #else
    gen->gi_exc_state.exc_type = NULL;
    gen->gi_exc_state.exc_value = NULL;
    gen->gi_exc_state.exc_traceback = NULL;
    #endif
#if CYTHON_USE_EXC_INFO_STACK
    gen->gi_exc_state.previous_item = NULL;
#endif
    gen->gi_weakreflist = NULL;
    Py_XINCREF(qualname);
    gen->gi_qualname = qualname;
    Py_XINCREF(name);
    gen->gi_name = name;
    Py_XINCREF(module_name);
    gen->gi_modulename = module_name;
    Py_XINCREF(code);
    gen->gi_code = code;
    gen->gi_frame = NULL;
    PyObject_GC_Track(gen);
    return gen;
}
static char __Pyx_Coroutine_test_and_set_is_running(__pyx_CoroutineObject *gen) {
    char result;
    #if PY_VERSION_HEX >= 0x030d0000 && !CYTHON_COMPILING_IN_LIMITED_API
    Py_BEGIN_CRITICAL_SECTION(gen);
    #endif
    result = gen->is_running;
    gen->is_running = 1;
    #if PY_VERSION_HEX >= 0x030d0000 && !CYTHON_COMPILING_IN_LIMITED_API
    Py_END_CRITICAL_SECTION();
    #endif
    return result;
}
static void __Pyx_Coroutine_unset_is_running(__pyx_CoroutineObject *gen) {
    #if PY_VERSION_HEX >= 0x030d0000 && !CYTHON_COMPILING_IN_LIMITED_API
    Py_BEGIN_CRITICAL_SECTION(gen);
    #endif
    assert(gen->is_running);
    gen->is_running = 0;
    #if PY_VERSION_HEX >= 0x030d0000 && !CYTHON_COMPILING_IN_LIMITED_API
    Py_END_CRITICAL_SECTION();
    #endif
}
static char __Pyx_Coroutine_get_is_running(__pyx_CoroutineObject *gen) {
    char result;
    #if PY_VERSION_HEX >= 0x030d0000 && !CYTHON_COMPILING_IN_LIMITED_API
    Py_BEGIN_CRITICAL_SECTION(gen);
    #endif
    result = gen->is_running;
    #if PY_VERSION_HEX >= 0x030d0000 && !CYTHON_COMPILING_IN_LIMITED_API
    Py_END_CRITICAL_SECTION();
    #endif
    return result;
}
static PyObject *__Pyx_Coroutine_get_is_running_getter(PyObject *gen, void *closure) {
    CYTHON_UNUSED_VAR(closure);
    char result = __Pyx_Coroutine_get_is_running((__pyx_CoroutineObject*)gen);
    if (result) Py_RETURN_TRUE;
    else Py_RETURN_FALSE;
}
#if __PYX_HAS_PY_AM_SEND == 2
static void __Pyx_SetBackportTypeAmSend(PyTypeObject *type, __Pyx_PyAsyncMethodsStruct *static_amsend_methods, __Pyx_pyiter_sendfunc am_send) {
    Py_ssize_t ptr_offset = (char*)(type->tp_as_async) - (char*)type;
    if (ptr_offset < 0 || ptr_offset > type->tp_basicsize) {
        return;
    }
    memcpy((void*)static_amsend_methods, (void*)(type->tp_as_async), sizeof(*type->tp_as_async));
    static_amsend_methods->am_send = am_send;
    type->tp_as_async = __Pyx_SlotTpAsAsync(static_amsend_methods);
}
#endif
static PyObject *__Pyx_Coroutine_fail_reduce_ex(PyObject *self, PyObject *arg) {
    CYTHON_UNUSED_VAR(arg);
    __Pyx_TypeName self_type_name = __Pyx_PyType_GetFullyQualifiedName(Py_TYPE((PyObject*)self));
    PyErr_Format(PyExc_TypeError, "cannot pickle '" __Pyx_FMT_TYPENAME "' object",
                         self_type_name);
    __Pyx_DECREF_TypeName(self_type_name);
    return NULL;
}

/* Generator */
static PyMethodDef __pyx_Generator_methods[] = {
    {"send", (PyCFunction) __Pyx_Coroutine_Send, METH_O,
     PyDoc_STR("send(arg) -> send 'arg' into generator,\nreturn next yielded value or raise StopIteration.")},
    {"throw", (PyCFunction) __Pyx_Coroutine_Throw, METH_VARARGS,
     PyDoc_STR("throw(typ[,val[,tb]]) -> raise exception in generator,\nreturn next yielded value or raise StopIteration.")},
    {"close", (PyCFunction) __Pyx_Coroutine_Close_Method, METH_NOARGS,
     PyDoc_STR("close() -> raise GeneratorExit inside generator.")},
    {"__reduce_ex__", (PyCFunction) __Pyx_Coroutine_fail_reduce_ex, METH_O, 0},
    {"__reduce__", (PyCFunction) __Pyx_Coroutine_fail_reduce_ex, METH_NOARGS, 0},
    {0, 0, 0, 0}
};
static PyMemberDef __pyx_Generator_memberlist[] = {
    {"gi_yieldfrom", T_OBJECT, offsetof(__pyx_CoroutineObject, yieldfrom), READONLY,
     PyDoc_STR("object being iterated by 'yield from', or None")},
    {"gi_code", T_OBJECT, offsetof(__pyx_CoroutineObject, gi_code), READONLY, NULL},
    {"__module__", T_OBJECT, offsetof(__pyx_CoroutineObject, gi_modulename), 0, 0},
    {"__weaklistoffset__", T_PYSSIZET, offsetof(__pyx_CoroutineObject, gi_weakreflist), READONLY, 0},
    {0, 0, 0, 0, 0}
};
static PyGetSetDef __pyx_Generator_getsets[] = {
    {"__name__", (getter)__Pyx_Coroutine_get_name, (setter)__Pyx_Coroutine_set_name,
     PyDoc_STR("name of the generator"), 0},
    {"__qualname__", (getter)__Pyx_Coroutine_get_qualname, (setter)__Pyx_Coroutine_set_qualname,
     PyDoc_STR("qualified name of the generator"), 0},
    {"gi_frame", (getter)__Pyx_Coroutine_get_frame, NULL,
     PyDoc_STR("Frame of the generator"), 0},
    {"gi_running", __Pyx_Coroutine_get_is_running_getter, NULL, NULL, NULL},
    {0, 0, 0, 0, 0}
};
static PyType_Slot __pyx_GeneratorType_slots[] = {
    {Py_tp_dealloc, (void *)__Pyx_Coroutine_dealloc},
    {Py_tp_traverse, (void *)__Pyx_Coroutine_traverse},
    {Py_tp_iter, (void *)PyObject_SelfIter},
    {Py_tp_iternext, (void *)__Pyx_Generator_Next},
    {Py_tp_methods, (void *)__pyx_Generator_methods},
    {Py_tp_members, (void *)__pyx_Generator_memberlist},
    {Py_tp_getset, (void *)__pyx_Generator_getsets},
    {Py_tp_getattro, (void *) PyObject_GenericGetAttr},
#if CYTHON_USE_TP_FINALIZE
    {Py_tp_finalize, (void *)__Pyx_Coroutine_del},
#endif
#if __PYX_HAS_PY_AM_SEND == 1
    {Py_am_send, (void *)__Pyx_Coroutine_AmSend},
#endif
    {0, 0},
};
static PyType_Spec __pyx_GeneratorType_spec = {
    __PYX_TYPE_MODULE_PREFIX "generator",
    sizeof(__pyx_CoroutineObject),
    0,
#if PY_VERSION_HEX >= 0x030A0000
    Py_TPFLAGS_IMMUTABLETYPE |
#endif
    Py_TPFLAGS_DEFAULT | Py_TPFLAGS_HAVE_GC | Py_TPFLAGS_HAVE_FINALIZE | __Pyx_TPFLAGS_HAVE_AM_SEND,
    __pyx_GeneratorType_slots
};
#if __PYX_HAS_PY_AM_SEND == 2
static __Pyx_PyAsyncMethodsStruct __pyx_Generator_as_async;
#endif
static int __pyx_Generator_init(PyObject *module) {
    __pyx_mstatetype *mstate = __Pyx_PyModule_GetState(module);
    mstate->__pyx_GeneratorType = __Pyx_FetchCommonTypeFromSpec(
        mstate->__pyx_CommonTypesMetaclassType, module, &__pyx_GeneratorType_spec, NULL);
    if (unlikely(!mstate->__pyx_GeneratorType)) {
        return -1;
    }
#if __PYX_HAS_PY_AM_SEND == 2
    __Pyx_SetBackportTypeAmSend(mstate->__pyx_GeneratorType, &__pyx_Generator_as_async, &__Pyx_Coroutine_AmSend);
#endif
    return 0;
}
static PyObject *__Pyx_Generator_GetInlinedResult(PyObject *self) {
    __pyx_CoroutineObject *gen = (__pyx_CoroutineObject*) self;
    PyObject *retval = NULL;
    if (unlikely(__Pyx_Coroutine_test_and_set_is_running(gen))) {
        return __Pyx_Coroutine_AlreadyRunningError(gen);
    }
    __Pyx_PySendResult result = __Pyx_Coroutine_SendEx(gen, Py_None, &retval, 0);
    __Pyx_Coroutine_unset_is_running(gen);
    (void) result;
    assert (result == PYGEN_RETURN || result == PYGEN_ERROR);
    assert ((result == PYGEN_RETURN && retval != NULL) || (result == PYGEN_ERROR && retval == NULL));
    return retval;
}

/* CStringEquals */
static CYTHON_INLINE int __Pyx_StrEq(const char *s1, const char *s2) {
    while (*s1 != '\0' && *s1 == *s2) { s1++; s2++; }
    return *s1 == *s2;
}

/* GetRuntimeVersion */
static unsigned long __Pyx_get_runtime_version(void) {
#if __PYX_LIMITED_VERSION_HEX >= 0x030b0000
    return Py_Version & ~0xFFUL;
#else
    static unsigned long __Pyx_cached_runtime_version = 0;
    if (__Pyx_cached_runtime_version == 0) {
        const char* rt_version = Py_GetVersion();
        unsigned long version = 0;
        unsigned long factor = 0x01000000UL;
        unsigned int digit = 0;
        int i = 0;
        while (factor) {
            while ('0' <= rt_version[i] && rt_version[i] <= '9') {
                digit = digit * 10 + (unsigned int) (rt_version[i] - '0');
                ++i;
            }
            version += factor * digit;
            if (rt_version[i] != '.')
                break;
            digit = 0;
            factor >>= 8;
            ++i;
        }
        __Pyx_cached_runtime_version = version;
    }
    return __Pyx_cached_runtime_version;
#endif
}

/* CheckBinaryVersion */
static int __Pyx_check_binary_version(unsigned long ct_version, unsigned long rt_version, int allow_newer) {
    const unsigned long MAJOR_MINOR = 0xFFFF0000UL;
    if ((rt_version & MAJOR_MINOR) == (ct_version & MAJOR_MINOR))
        return 0;
    if (likely(allow_newer && (rt_version & MAJOR_MINOR) > (ct_version & MAJOR_MINOR)))
        return 1;
    {
        char message[200];
        PyOS_snprintf(message, sizeof(message),
                      "compile time Python version %d.%d "
                      "of module '%.100s' "
                      "%s "
                      "runtime version %d.%d",
                       (int) (ct_version >> 24), (int) ((ct_version >> 16) & 0xFF),
                       __Pyx_MODULE_NAME,
                       (allow_newer) ? "was newer than" : "does not match",
                       (int) (rt_version >> 24), (int) ((rt_version >> 16) & 0xFF)
       );
        return PyErr_WarnEx(NULL, message, 1);
    }
}

/* NewCodeObj */
#if CYTHON_COMPILING_IN_LIMITED_API
    static PyObject* __Pyx__PyCode_New(int a, int p, int k, int l, int s, int f,
                                       PyObject *code, PyObject *c, PyObject* n, PyObject *v,
                                       PyObject *fv, PyObject *cell, PyObject* fn,
                                       PyObject *name, int fline, PyObject *lnos) {
        PyObject *exception_table = NULL;
        PyObject *types_module=NULL, *code_type=NULL, *result=NULL;
        #if __PYX_LIMITED_VERSION_HEX < 0x030b0000
        PyObject *version_info;
        PyObject *py_minor_version = NULL;
        #endif
        long minor_version = 0;
        PyObject *type, *value, *traceback;
        PyErr_Fetch(&type, &value, &traceback);
        #if __PYX_LIMITED_VERSION_HEX >= 0x030b0000
        minor_version = 11;
        #else
        if (!(version_info = PySys_GetObject("version_info"))) goto end;
        if (!(py_minor_version = PySequence_GetItem(version_info, 1))) goto end;
        minor_version = PyLong_AsLong(py_minor_version);
        Py_DECREF(py_minor_version);
        if (minor_version == -1 && PyErr_Occurred()) goto end;
        #endif
        if (!(types_module = PyImport_ImportModule("types"))) goto end;
        if (!(code_type = PyObject_GetAttrString(types_module, "CodeType"))) goto end;
        if (minor_version <= 7) {
            (void)p;
            result = PyObject_CallFunction(code_type, "iiiiiOOOOOOiOOO", a, k, l, s, f, code,
                          c, n, v, fn, name, fline, lnos, fv, cell);
        } else if (minor_version <= 10) {
            result = PyObject_CallFunction(code_type, "iiiiiiOOOOOOiOOO", a,p, k, l, s, f, code,
                          c, n, v, fn, name, fline, lnos, fv, cell);
        } else {
            if (!(exception_table = PyBytes_FromStringAndSize(NULL, 0))) goto end;
            result = PyObject_CallFunction(code_type, "iiiiiiOOOOOOOiOOOO", a,p, k, l, s, f, code,
                          c, n, v, fn, name, name, fline, lnos, exception_table, fv, cell);
        }
    end:
        Py_XDECREF(code_type);
        Py_XDECREF(exception_table);
        Py_XDECREF(types_module);
        if (type) {
            PyErr_Restore(type, value, traceback);
        }
        return result;
    }
#elif PY_VERSION_HEX >= 0x030B0000
  static PyCodeObject* __Pyx__PyCode_New(int a, int p, int k, int l, int s, int f,
                                         PyObject *code, PyObject *c, PyObject* n, PyObject *v,
                                         PyObject *fv, PyObject *cell, PyObject* fn,
                                         PyObject *name, int fline, PyObject *lnos) {
    PyCodeObject *result;
    result =
      #if PY_VERSION_HEX >= 0x030C0000
        PyUnstable_Code_NewWithPosOnlyArgs
      #else
        PyCode_NewWithPosOnlyArgs
      #endif
        (a, p, k, l, s, f, code, c, n, v, fv, cell, fn, name, name, fline, lnos, __pyx_mstate_global->__pyx_empty_bytes);
    return result;
  }
#elif PY_VERSION_HEX >= 0x030800B2 && !CYTHON_COMPILING_IN_PYPY
  #define __Pyx__PyCode_New(a, p, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)\
          PyCode_NewWithPosOnlyArgs(a, p, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)
#else
  #define __Pyx__PyCode_New(a, p, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)\
          PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)
#endif
static PyObject* __Pyx_PyCode_New(
        const __Pyx_PyCode_New_function_description descr,
        PyObject * const *varnames,
        PyObject *filename,
        PyObject *funcname,
        const char *line_table,
        PyObject *tuple_dedup_map
) {
    PyObject *code_obj = NULL, *varnames_tuple_dedup = NULL, *code_bytes = NULL, *line_table_bytes = NULL;
    Py_ssize_t var_count = (Py_ssize_t) descr.nlocals;
    PyObject *varnames_tuple = PyTuple_New(var_count);
    if (unlikely(!varnames_tuple)) return NULL;
    for (Py_ssize_t i=0; i < var_count; i++) {
        Py_INCREF(varnames[i]);
        if (__Pyx_PyTuple_SET_ITEM(varnames_tuple, i, varnames[i]) != (0)) goto done;
    }
    #if CYTHON_COMPILING_IN_LIMITED_API
    varnames_tuple_dedup = PyDict_GetItem(tuple_dedup_map, varnames_tuple);
    if (!varnames_tuple_dedup) {
        if (unlikely(PyDict_SetItem(tuple_dedup_map, varnames_tuple, varnames_tuple) < 0)) goto done;
        varnames_tuple_dedup = varnames_tuple;
    }
    #else
    varnames_tuple_dedup = PyDict_SetDefault(tuple_dedup_map, varnames_tuple, varnames_tuple);
    if (unlikely(!varnames_tuple_dedup)) goto done;
    #endif
    #if CYTHON_AVOID_BORROWED_REFS
    Py_INCREF(varnames_tuple_dedup);
    #endif
    if (__PYX_LIMITED_VERSION_HEX >= (0x030b0000) && line_table != NULL
        && !CYTHON_COMPILING_IN_GRAAL) {
        line_table_bytes = PyBytes_FromStringAndSize(line_table, descr.line_table_length);
        if (unlikely(!line_table_bytes)) goto done;
        Py_ssize_t code_len = (descr.line_table_length * 2 + 4) & ~3;
        code_bytes = PyBytes_FromStringAndSize(NULL, code_len);
        if (unlikely(!code_bytes)) goto done;
        char* c_code_bytes = PyBytes_AsString(code_bytes);
        if (unlikely(!c_code_bytes)) goto done;
        memset(c_code_bytes, 0, (size_t) code_len);
    }
    code_obj = (PyObject*) __Pyx__PyCode_New(
        (int) descr.argcount,
        (int) descr.num_posonly_args,
        (int) descr.num_kwonly_args,
        (int) descr.nlocals,
        0,
        (int) descr.flags,
        code_bytes ? code_bytes : __pyx_mstate_global->__pyx_empty_bytes,
        __pyx_mstate_global->__pyx_empty_tuple,
        __pyx_mstate_global->__pyx_empty_tuple,
        varnames_tuple_dedup,
        __pyx_mstate_global->__pyx_empty_tuple,
        __pyx_mstate_global->__pyx_empty_tuple,
        filename,
        funcname,
        (int) descr.first_line,
        (__PYX_LIMITED_VERSION_HEX >= (0x030b0000) && line_table_bytes) ? line_table_bytes : __pyx_mstate_global->__pyx_empty_bytes
    );
done:
    Py_XDECREF(code_bytes);
    Py_XDECREF(line_table_bytes);
    #if CYTHON_AVOID_BORROWED_REFS
    Py_XDECREF(varnames_tuple_dedup);
    #endif
    Py_DECREF(varnames_tuple);
    return code_obj;
}

/* InitStrings */
static int __Pyx_InitStrings(__Pyx_StringTabEntry const *t, PyObject **target, const char* const* encoding_names) {
    while (t->s) {
        PyObject *str;
        if (t->is_unicode) {
            if (t->intern) {
                str = PyUnicode_InternFromString(t->s);
            } else if (t->encoding) {
                str = PyUnicode_Decode(t->s, t->n - 1, encoding_names[t->encoding], NULL);
            } else {
                str = PyUnicode_FromStringAndSize(t->s, t->n - 1);
            }
        } else {
            str = PyBytes_FromStringAndSize(t->s, t->n - 1);
        }
        if (!str)
            return -1;
        *target = str;
        if (PyObject_Hash(str) == -1)
            return -1;
        ++t;
        ++target;
    }
    return 0;
}

#include <string.h>
static CYTHON_INLINE Py_ssize_t __Pyx_ssize_strlen(const char *s) {
    size_t len = strlen(s);
    if (unlikely(len > (size_t) PY_SSIZE_T_MAX)) {
        PyErr_SetString(PyExc_OverflowError, "byte string is too long");
        return -1;
    }
    return (Py_ssize_t) len;
}
static CYTHON_INLINE PyObject* __Pyx_PyUnicode_FromString(const char* c_str) {
    Py_ssize_t len = __Pyx_ssize_strlen(c_str);
    if (unlikely(len < 0)) return NULL;
    return __Pyx_PyUnicode_FromStringAndSize(c_str, len);
}
static CYTHON_INLINE PyObject* __Pyx_PyByteArray_FromString(const char* c_str) {
    Py_ssize_t len = __Pyx_ssize_strlen(c_str);
    if (unlikely(len < 0)) return NULL;
    return PyByteArray_FromStringAndSize(c_str, len);
}
static CYTHON_INLINE const char* __Pyx_PyObject_AsString(PyObject* o) {
    Py_ssize_t ignore;
    return __Pyx_PyObject_AsStringAndSize(o, &ignore);
}
#if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII || __PYX_DEFAULT_STRING_ENCODING_IS_UTF8
static CYTHON_INLINE const char* __Pyx_PyUnicode_AsStringAndSize(PyObject* o, Py_ssize_t *length) {
    if (unlikely(__Pyx_PyUnicode_READY(o) == -1)) return NULL;
#if CYTHON_COMPILING_IN_LIMITED_API
    {
        const char* result;
        Py_ssize_t unicode_length;
        CYTHON_MAYBE_UNUSED_VAR(unicode_length); // only for __PYX_DEFAULT_STRING_ENCODING_IS_ASCII
        #if __PYX_LIMITED_VERSION_HEX < 0x030A0000
        if (unlikely(PyArg_Parse(o, "s#", &result, length) < 0)) return NULL;
        #else
        result = PyUnicode_AsUTF8AndSize(o, length);
        #endif
        #if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII
        unicode_length = PyUnicode_GetLength(o);
        if (unlikely(unicode_length < 0)) return NULL;
        if (unlikely(unicode_length != *length)) {
            PyUnicode_AsASCIIString(o);
            return NULL;
        }
        #endif
        return result;
    }
#else
#if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII
    if (likely(PyUnicode_IS_ASCII(o))) {
        *length = PyUnicode_GET_LENGTH(o);
        return PyUnicode_AsUTF8(o);
    } else {
        PyUnicode_AsASCIIString(o);
        return NULL;
    }
#else
    return PyUnicode_AsUTF8AndSize(o, length);
#endif
#endif
}
#endif
static CYTHON_INLINE const char* __Pyx_PyObject_AsStringAndSize(PyObject* o, Py_ssize_t *length) {
#if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII || __PYX_DEFAULT_STRING_ENCODING_IS_UTF8
    if (PyUnicode_Check(o)) {
        return __Pyx_PyUnicode_AsStringAndSize(o, length);
    } else
#endif
    if (PyByteArray_Check(o)) {
#if (CYTHON_ASSUME_SAFE_SIZE && CYTHON_ASSUME_SAFE_MACROS) || (CYTHON_COMPILING_IN_PYPY && (defined(PyByteArray_AS_STRING) && defined(PyByteArray_GET_SIZE)))
        *length = PyByteArray_GET_SIZE(o);
        return PyByteArray_AS_STRING(o);
#else
        *length = PyByteArray_Size(o);
        if (*length == -1) return NULL;
        return PyByteArray_AsString(o);
#endif
    } else
    {
        char* result;
        int r = PyBytes_AsStringAndSize(o, &result, length);
        if (unlikely(r < 0)) {
            return NULL;
        } else {
            return result;
        }
    }
}
static CYTHON_INLINE int __Pyx_PyObject_IsTrue(PyObject* x) {
   int is_true = x == Py_True;
   if (is_true | (x == Py_False) | (x == Py_None)) return is_true;
   else return PyObject_IsTrue(x);
}
static CYTHON_INLINE int __Pyx_PyObject_IsTrueAndDecref(PyObject* x) {
    int retval;
    if (unlikely(!x)) return -1;
    retval = __Pyx_PyObject_IsTrue(x);
    Py_DECREF(x);
    return retval;
}
static PyObject* __Pyx_PyNumber_LongWrongResultType(PyObject* result) {
    __Pyx_TypeName result_type_name = __Pyx_PyType_GetFullyQualifiedName(Py_TYPE(result));
    if (PyLong_Check(result)) {
        if (PyErr_WarnFormat(PyExc_DeprecationWarning, 1,
                "__int__ returned non-int (type " __Pyx_FMT_TYPENAME ").  "
                "The ability to return an instance of a strict subclass of int is deprecated, "
                "and may be removed in a future version of Python.",
                result_type_name)) {
            __Pyx_DECREF_TypeName(result_type_name);
            Py_DECREF(result);
            return NULL;
        }
        __Pyx_DECREF_TypeName(result_type_name);
        return result;
    }
    PyErr_Format(PyExc_TypeError,
                 "__int__ returned non-int (type " __Pyx_FMT_TYPENAME ")",
                 result_type_name);
    __Pyx_DECREF_TypeName(result_type_name);
    Py_DECREF(result);
    return NULL;
}
static CYTHON_INLINE PyObject* __Pyx_PyNumber_Long(PyObject* x) {
#if CYTHON_USE_TYPE_SLOTS
  PyNumberMethods *m;
#endif
  PyObject *res = NULL;
  if (likely(PyLong_Check(x)))
      return __Pyx_NewRef(x);
#if CYTHON_USE_TYPE_SLOTS
  m = Py_TYPE(x)->tp_as_number;
  if (likely(m && m->nb_int)) {
      res = m->nb_int(x);
  }
#else
  if (!PyBytes_CheckExact(x) && !PyUnicode_CheckExact(x)) {
      res = PyNumber_Long(x);
  }
#endif
  if (likely(res)) {
      if (unlikely(!PyLong_CheckExact(res))) {
          return __Pyx_PyNumber_LongWrongResultType(res);
      }
  }
  else if (!PyErr_Occurred()) {
      PyErr_SetString(PyExc_TypeError,
                      "an integer is required");
  }
  return res;
}
static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject* b) {
  Py_ssize_t ival;
  PyObject *x;
  if (likely(PyLong_CheckExact(b))) {
    #if CYTHON_USE_PYLONG_INTERNALS
    if (likely(__Pyx_PyLong_IsCompact(b))) {
        return __Pyx_PyLong_CompactValue(b);
    } else {
      const digit* digits = __Pyx_PyLong_Digits(b);
      const Py_ssize_t size = __Pyx_PyLong_SignedDigitCount(b);
      switch (size) {
         case 2:
           if (8 * sizeof(Py_ssize_t) > 2 * PyLong_SHIFT) {
             return (Py_ssize_t) (((((size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0]));
           }
           break;
         case -2:
           if (8 * sizeof(Py_ssize_t) > 2 * PyLong_SHIFT) {
             return -(Py_ssize_t) (((((size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0]));
           }
           break;
         case 3:
           if (8 * sizeof(Py_ssize_t) > 3 * PyLong_SHIFT) {
             return (Py_ssize_t) (((((((size_t)digits[2]) << PyLong_SHIFT) | (size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0]));
           }
           break;
         case -3:
           if (8 * sizeof(Py_ssize_t) > 3 * PyLong_SHIFT) {
             return -(Py_ssize_t) (((((((size_t)digits[2]) << PyLong_SHIFT) | (size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0]));
           }
           break;
         case 4:
           if (8 * sizeof(Py_ssize_t) > 4 * PyLong_SHIFT) {
             return (Py_ssize_t) (((((((((size_t)digits[3]) << PyLong_SHIFT) | (size_t)digits[2]) << PyLong_SHIFT) | (size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0]));
           }
           break;
         case -4:
           if (8 * sizeof(Py_ssize_t) > 4 * PyLong_SHIFT) {
             return -(Py_ssize_t) (((((((((size_t)digits[3]) << PyLong_SHIFT) | (size_t)digits[2]) << PyLong_SHIFT) | (size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0]));
           }
           break;
      }
    }
    #endif
    return PyLong_AsSsize_t(b);
  }
  x = PyNumber_Index(b);
  if (!x) return -1;
  ival = PyLong_AsSsize_t(x);
  Py_DECREF(x);
  return ival;
}
static CYTHON_INLINE Py_hash_t __Pyx_PyIndex_AsHash_t(PyObject* o) {
  if (sizeof(Py_hash_t) == sizeof(Py_ssize_t)) {
    return (Py_hash_t) __Pyx_PyIndex_AsSsize_t(o);
  } else {
    Py_ssize_t ival;
    PyObject *x;
    x = PyNumber_Index(o);
    if (!x) return -1;
    ival = PyLong_AsLong(x);
    Py_DECREF(x);
    return ival;
  }
}
static CYTHON_INLINE PyObject *__Pyx_Owned_Py_None(int b) {
    CYTHON_UNUSED_VAR(b);
    return __Pyx_NewRef(Py_None);
}
static CYTHON_INLINE PyObject * __Pyx_PyBool_FromLong(long b) {
  return b ? __Pyx_NewRef(Py_True) : __Pyx_NewRef(Py_False);
}
static CYTHON_INLINE PyObject * __Pyx_PyLong_FromSize_t(size_t ival) {
    return PyLong_FromSize_t(ival);
}


/* MultiPhaseInitModuleState */
#if CYTHON_PEP489_MULTI_PHASE_INIT && CYTHON_USE_MODULE_STATE
#ifndef CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE
#if (CYTHON_COMPILING_IN_LIMITED_API || PY_VERSION_HEX >= 0x030C0000)
  #define CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE 1
#else
  #define CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE 0
#endif
#endif
#if CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE && !CYTHON_ATOMICS
#error "Module state with PEP489 requires atomics. Currently that's one of\
 C11, C++11, gcc atomic intrinsics or MSVC atomic intrinsics"
#endif
#if !CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE
#define __Pyx_ModuleStateLookup_Lock()
#define __Pyx_ModuleStateLookup_Unlock()
#elif !CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX >= 0x030d0000
static PyMutex __Pyx_ModuleStateLookup_mutex = {0};
#define __Pyx_ModuleStateLookup_Lock() PyMutex_Lock(&__Pyx_ModuleStateLookup_mutex)
#define __Pyx_ModuleStateLookup_Unlock() PyMutex_Unlock(&__Pyx_ModuleStateLookup_mutex)
#elif defined(__cplusplus) && __cplusplus >= 201103L
#include <mutex>
static std::mutex __Pyx_ModuleStateLookup_mutex;
#define __Pyx_ModuleStateLookup_Lock() __Pyx_ModuleStateLookup_mutex.lock()
#define __Pyx_ModuleStateLookup_Unlock() __Pyx_ModuleStateLookup_mutex.unlock()
#elif defined(__STDC_VERSION__) && (__STDC_VERSION__ > 201112L) && !defined(__STDC_NO_THREADS__)
#include <threads.h>
static mtx_t __Pyx_ModuleStateLookup_mutex;
static once_flag __Pyx_ModuleStateLookup_mutex_once_flag = ONCE_FLAG_INIT;
static void __Pyx_ModuleStateLookup_initialize_mutex(void) {
    mtx_init(&__Pyx_ModuleStateLookup_mutex, mtx_plain);
}
#define __Pyx_ModuleStateLookup_Lock()\
  call_once(&__Pyx_ModuleStateLookup_mutex_once_flag, __Pyx_ModuleStateLookup_initialize_mutex);\
  mtx_lock(&__Pyx_ModuleStateLookup_mutex)
#define __Pyx_ModuleStateLookup_Unlock() mtx_unlock(&__Pyx_ModuleStateLookup_mutex)
#elif defined(HAVE_PTHREAD_H)
#include <pthread.h>
static pthread_mutex_t __Pyx_ModuleStateLookup_mutex = PTHREAD_MUTEX_INITIALIZER;
#define __Pyx_ModuleStateLookup_Lock() pthread_mutex_lock(&__Pyx_ModuleStateLookup_mutex)
#define __Pyx_ModuleStateLookup_Unlock() pthread_mutex_unlock(&__Pyx_ModuleStateLookup_mutex)
#elif defined(_WIN32)
#include <Windows.h>  // synchapi.h on its own doesn't work
static SRWLOCK __Pyx_ModuleStateLookup_mutex = SRWLOCK_INIT;
#define __Pyx_ModuleStateLookup_Lock() AcquireSRWLockExclusive(&__Pyx_ModuleStateLookup_mutex)
#define __Pyx_ModuleStateLookup_Unlock() ReleaseSRWLockExclusive(&__Pyx_ModuleStateLookup_mutex)
#else
#error "No suitable lock available for CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE.\
 Requires C standard >= C11, or C++ standard >= C++11,\
 or pthreads, or the Windows 32 API, or Python >= 3.13."
#endif
typedef struct {
    int64_t id;
    PyObject *module;
} __Pyx_InterpreterIdAndModule;
typedef struct {
    char interpreter_id_as_index;
    Py_ssize_t count;
    Py_ssize_t allocated;
    __Pyx_InterpreterIdAndModule table[1];
} __Pyx_ModuleStateLookupData;
#define __PYX_MODULE_STATE_LOOKUP_SMALL_SIZE 32
#if CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE
static __pyx_atomic_int_type __Pyx_ModuleStateLookup_read_counter = 0;
#endif
#if CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE
static __pyx_atomic_ptr_type __Pyx_ModuleStateLookup_data = 0;
#else
static __Pyx_ModuleStateLookupData* __Pyx_ModuleStateLookup_data = NULL;
#endif
static __Pyx_InterpreterIdAndModule* __Pyx_State_FindModuleStateLookupTableLowerBound(
        __Pyx_InterpreterIdAndModule* table,
        Py_ssize_t count,
        int64_t interpreterId) {
    __Pyx_InterpreterIdAndModule* begin = table;
    __Pyx_InterpreterIdAndModule* end = begin + count;
    if (begin->id == interpreterId) {
        return begin;
    }
    while ((end - begin) > __PYX_MODULE_STATE_LOOKUP_SMALL_SIZE) {
        __Pyx_InterpreterIdAndModule* halfway = begin + (end - begin)/2;
        if (halfway->id == interpreterId) {
            return halfway;
        }
        if (halfway->id < interpreterId) {
            begin = halfway;
        } else {
            end = halfway;
        }
    }
    for (; begin < end; ++begin) {
        if (begin->id >= interpreterId) return begin;
    }
    return begin;
}
static PyObject *__Pyx_State_FindModule(CYTHON_UNUSED void* dummy) {
    int64_t interpreter_id = PyInterpreterState_GetID(__Pyx_PyInterpreterState_Get());
    if (interpreter_id == -1) return NULL;
#if CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE
    __Pyx_ModuleStateLookupData* data = (__Pyx_ModuleStateLookupData*)__pyx_atomic_pointer_load_relaxed(&__Pyx_ModuleStateLookup_data);
    {
        __pyx_atomic_incr_acq_rel(&__Pyx_ModuleStateLookup_read_counter);
        if (likely(data)) {
            __Pyx_ModuleStateLookupData* new_data = (__Pyx_ModuleStateLookupData*)__pyx_atomic_pointer_load_acquire(&__Pyx_ModuleStateLookup_data);
            if (likely(data == new_data)) {
                goto read_finished;
            }
        }
        __pyx_atomic_decr_acq_rel(&__Pyx_ModuleStateLookup_read_counter);
        __Pyx_ModuleStateLookup_Lock();
        __pyx_atomic_incr_relaxed(&__Pyx_ModuleStateLookup_read_counter);
        data = (__Pyx_ModuleStateLookupData*)__pyx_atomic_pointer_load_relaxed(&__Pyx_ModuleStateLookup_data);
        __Pyx_ModuleStateLookup_Unlock();
    }
  read_finished:;
#else
    __Pyx_ModuleStateLookupData* data = __Pyx_ModuleStateLookup_data;
#endif
    __Pyx_InterpreterIdAndModule* found = NULL;
    if (unlikely(!data)) goto end;
    if (data->interpreter_id_as_index) {
        if (interpreter_id < data->count) {
            found = data->table+interpreter_id;
        }
    } else {
        found = __Pyx_State_FindModuleStateLookupTableLowerBound(
            data->table, data->count, interpreter_id);
    }
  end:
    {
        PyObject *result=NULL;
        if (found && found->id == interpreter_id) {
            result = found->module;
        }
#if CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE
        __pyx_atomic_decr_acq_rel(&__Pyx_ModuleStateLookup_read_counter);
#endif
        return result;
    }
}
#if CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE
static void __Pyx_ModuleStateLookup_wait_until_no_readers(void) {
    while (__pyx_atomic_load(&__Pyx_ModuleStateLookup_read_counter) != 0);
}
#else
#define __Pyx_ModuleStateLookup_wait_until_no_readers()
#endif
static int __Pyx_State_AddModuleInterpIdAsIndex(__Pyx_ModuleStateLookupData **old_data, PyObject* module, int64_t interpreter_id) {
    Py_ssize_t to_allocate = (*old_data)->allocated;
    while (to_allocate <= interpreter_id) {
        if (to_allocate == 0) to_allocate = 1;
        else to_allocate *= 2;
    }
    __Pyx_ModuleStateLookupData *new_data = *old_data;
    if (to_allocate != (*old_data)->allocated) {
         new_data = (__Pyx_ModuleStateLookupData *)realloc(
            *old_data,
            sizeof(__Pyx_ModuleStateLookupData)+(to_allocate-1)*sizeof(__Pyx_InterpreterIdAndModule));
        if (!new_data) {
            PyErr_NoMemory();
            return -1;
        }
        for (Py_ssize_t i = new_data->allocated; i < to_allocate; ++i) {
            new_data->table[i].id = i;
            new_data->table[i].module = NULL;
        }
        new_data->allocated = to_allocate;
    }
    new_data->table[interpreter_id].module = module;
    if (new_data->count < interpreter_id+1) {
        new_data->count = interpreter_id+1;
    }
    *old_data = new_data;
    return 0;
}
static void __Pyx_State_ConvertFromInterpIdAsIndex(__Pyx_ModuleStateLookupData *data) {
    __Pyx_InterpreterIdAndModule *read = data->table;
    __Pyx_InterpreterIdAndModule *write = data->table;
    __Pyx_InterpreterIdAndModule *end = read + data->count;
    for (; read<end; ++read) {
        if (read->module) {
            write->id = read->id;
            write->module = read->module;
            ++write;
        }
    }
    data->count = write - data->table;
    for (; write<end; ++write) {
        write->id = 0;
        write->module = NULL;
    }
    data->interpreter_id_as_index = 0;
}
static int __Pyx_State_AddModule(PyObject* module, CYTHON_UNUSED void* dummy) {
    int64_t interpreter_id = PyInterpreterState_GetID(__Pyx_PyInterpreterState_Get());
    if (interpreter_id == -1) return -1;
    int result = 0;
    __Pyx_ModuleStateLookup_Lock();
#if CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE
    __Pyx_ModuleStateLookupData *old_data = (__Pyx_ModuleStateLookupData *)
            __pyx_atomic_pointer_exchange(&__Pyx_ModuleStateLookup_data, 0);
#else
    __Pyx_ModuleStateLookupData *old_data = __Pyx_ModuleStateLookup_data;
#endif
    __Pyx_ModuleStateLookupData *new_data = old_data;
    if (!new_data) {
        new_data = (__Pyx_ModuleStateLookupData *)calloc(1, sizeof(__Pyx_ModuleStateLookupData));
        if (!new_data) {
            result = -1;
            PyErr_NoMemory();
            goto end;
        }
        new_data->allocated = 1;
        new_data->interpreter_id_as_index = 1;
    }
    __Pyx_ModuleStateLookup_wait_until_no_readers();
    if (new_data->interpreter_id_as_index) {
        if (interpreter_id < __PYX_MODULE_STATE_LOOKUP_SMALL_SIZE) {
            result = __Pyx_State_AddModuleInterpIdAsIndex(&new_data, module, interpreter_id);
            goto end;
        }
        __Pyx_State_ConvertFromInterpIdAsIndex(new_data);
    }
    {
        Py_ssize_t insert_at = 0;
        {
            __Pyx_InterpreterIdAndModule* lower_bound = __Pyx_State_FindModuleStateLookupTableLowerBound(
                new_data->table, new_data->count, interpreter_id);
            assert(lower_bound);
            insert_at = lower_bound - new_data->table;
            if (unlikely(insert_at < new_data->count && lower_bound->id == interpreter_id)) {
                lower_bound->module = module;
                goto end;  // already in table, nothing more to do
            }
        }
        if (new_data->count+1 >= new_data->allocated) {
            Py_ssize_t to_allocate = (new_data->count+1)*2;
            new_data =
                (__Pyx_ModuleStateLookupData*)realloc(
                    new_data,
                    sizeof(__Pyx_ModuleStateLookupData) +
                    (to_allocate-1)*sizeof(__Pyx_InterpreterIdAndModule));
            if (!new_data) {
                result = -1;
                new_data = old_data;
                PyErr_NoMemory();
                goto end;
            }
            new_data->allocated = to_allocate;
        }
        ++new_data->count;
        int64_t last_id = interpreter_id;
        PyObject *last_module = module;
        for (Py_ssize_t i=insert_at; i<new_data->count; ++i) {
            int64_t current_id = new_data->table[i].id;
            new_data->table[i].id = last_id;
            last_id = current_id;
            PyObject *current_module = new_data->table[i].module;
            new_data->table[i].module = last_module;
            last_module = current_module;
        }
    }
  end:
#if CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE
    __pyx_atomic_pointer_exchange(&__Pyx_ModuleStateLookup_data, new_data);
#else
    __Pyx_ModuleStateLookup_data = new_data;
#endif
    __Pyx_ModuleStateLookup_Unlock();
    return result;
}
static int __Pyx_State_RemoveModule(CYTHON_UNUSED void* dummy) {
    int64_t interpreter_id = PyInterpreterState_GetID(__Pyx_PyInterpreterState_Get());
    if (interpreter_id == -1) return -1;
    __Pyx_ModuleStateLookup_Lock();
#if CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE
    __Pyx_ModuleStateLookupData *data = (__Pyx_ModuleStateLookupData *)
            __pyx_atomic_pointer_exchange(&__Pyx_ModuleStateLookup_data, 0);
#else
    __Pyx_ModuleStateLookupData *data = __Pyx_ModuleStateLookup_data;
#endif
    if (data->interpreter_id_as_index) {
        if (interpreter_id < data->count) {
            data->table[interpreter_id].module = NULL;
        }
        goto done;
    }
    {
        __Pyx_ModuleStateLookup_wait_until_no_readers();
        __Pyx_InterpreterIdAndModule* lower_bound = __Pyx_State_FindModuleStateLookupTableLowerBound(
            data->table, data->count, interpreter_id);
        if (!lower_bound) goto done;
        if (lower_bound->id != interpreter_id) goto done;
        __Pyx_InterpreterIdAndModule *end = data->table+data->count;
        for (;lower_bound<end-1; ++lower_bound) {
            lower_bound->id = (lower_bound+1)->id;
            lower_bound->module = (lower_bound+1)->module;
        }
    }
    --data->count;
    if (data->count == 0) {
        free(data);
        data = NULL;
    }
  done:
#if CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE
    __pyx_atomic_pointer_exchange(&__Pyx_ModuleStateLookup_data, data);
#else
    __Pyx_ModuleStateLookup_data = data;
#endif
    __Pyx_ModuleStateLookup_Unlock();
    return 0;
}
#endif

/* #### Code section: utility_code_pragmas_end ### */
#ifdef _MSC_VER
#pragma warning( pop )
#endif



/* #### Code section: end ### */
#endif /* Py_PYTHON_H */
