
    E#iO                    P   S SK Jr  S SKJr  S SKrS SKJrJrJrJ	r	J
r
JrJrJrJrJrJrJrJrJrJrJrJrJrJr  S SKJr  S SKJr  S SKJr  S SKJr  S S	KJr  S S
KJ r   S SKJ!r!  S SKJ"r"  S SKJ#r#  S SKJ$r$  S SKJ%r%  S SKJ&r&  S SKJ'r'  S SKJ(r(  S SK)J*r*  S SK+J,r,   " S S\\5      r-g)    )Exchange)ImplicitAPIN)AnyBalancesCurrencyDepositAddressIntLedgerEntryMarketNumOrder	OrderBook	OrderSide	OrderTypeStrStringsTickerTickersTradeTransactionTransferEntry)List)ExchangeError)AuthenticationError)PermissionDenied)AccountSuspended)
BadRequest)	BadSymbol)InsufficientFunds)InvalidOrder)OrderNotFound)OrderImmediatelyFillable)RateLimitExceeded)OnMaintenance)InvalidNonce)	TICK_SIZE)Precisec                     ^  \ rS rSrS\4U 4S jjr0 4S\\   4S jjrS\4S jr	SSS0 4S\
S\S	\S\\   4S
 jjrSGS\S\S\4S jjrSSS0 4S\
S\S	\4S jjrS\4S jr0 4S\4S jjrS0 4S\S	\S\4S jjrSGS\S\S\4S jjr0 4S\4S jjrS0 4S\S\4S jjrSSS0 4S\
S\S	\S\\   4S jjrSGS\S\S\4S jjr S r!SGS\S\"4S jjr#SSS0 4S\S\S\S	\S\\"   4
S  jjr$SGS!\S\S\%4S" jjr&SS0 4S\S\S	\S\\%   4S# jjr'S0 4S\S$\(S%\)S&\*S'\+4
S( jjr,S0 4S)\S\
4S* jjr-S\S\.4S+ jr/SGS\S\04S, jjr10 4S\S\04S- jjr2S0 4S.\S\\0   4S/ jjr30 4S\S&\*S0\S1\S\44
S2 jjr5SGS3\S\S\44S4 jjr6S5\
S\
4S6 jr7S0 4S\S&\*S7\S8\
S\84
S9 jjr9SGS:\S\S\84S; jjr:S<S=0 SS4S> jr;S?\<S@\SA\SB\SC\SD\4SE jr=SFr>U =r?$ )Hzonda   returnc           (        > U R                  [        [        U ]  5       SSS/S0 SS_SS_SS	_S
S	_SS	_SS	_SS	_SS	_SS	_SS	_SS	_SS_SS	_SS	_SS	_SS	_SS_0 SS	_SS	_SS_SS	_SS	_SS	_SS	_SS	_S S	_S!S	_S"S	_S#S	_S$S	_S%S_S&S_S'S	_S(S _E0 S)S	_S*S	_S+S	_S,S	_S-S	_S.S	_S/S	_S0S	_S1S	_S2S	_S3S	_S4S_S5S	_S6S	_S7S	_S8S	_S9S	_E0 S:S	_S;S	_S<S	_S=S	_S>S	_S?S_S@S	_SAS	_SBS	_SCS	_SDS	_SES_SFS_SGS	_SHS	_SIS	_SJS	_E0 SKS_SLS	_SMS	_SNS_SOS	_SPS	_SQS	_SRS	_SSS	_STS	_SUS	_SVS	_SWS	_SXS	_SYS_SZS_S[S	_E0 S\S_S]S	_S^S	_S_S	_S`S	_SaS _SbS	_ScS	_SdS	_SeS	_SfS _SgS	_ShS	_SiS	_SjS	_SkS	_SlS	_ES	S	SSSm.ESnSoSpSqSrSsStSuSvSwSxSySzS{.S|S}S~SSSSSS.SS/SSS.S/ SQ0S/ SQ0S/ SQ0/ SQ/ SQSS/S/S.S.U R	                  S5      U R	                  S5      SS	S.U R	                  S5      U R	                  S5      SSU R	                  S5      U R	                  S5      /U R	                  S5      U R	                  S5      /U R	                  S5      U R	                  S5      /U R	                  S5      U R	                  S5      /U R	                  S5      U R	                  S5      /U R	                  S5      U R	                  S5      /U R	                  S5      U R	                  S5      /U R	                  S5      U R	                  S5      /U R	                  S5      U R	                  S5      /U R	                  S5      U R	                  S5      /U R	                  S5      U R	                  S5      /U R	                  S5      U R	                  S5      /U R	                  S5      U R	                  S5      /U R	                  S5      U R	                  S5      /U R	                  S5      U R	                  S5      /U R	                  S5      U R	                  S5      /U R	                  S5      U R	                  S5      /U R	                  S5      U R	                  S5      /U R	                  S5      U R	                  S5      //U R	                  S5      U R	                  S5      /U R	                  S5      U R	                  S5      /U R	                  S5      U R	                  S5      /U R	                  S5      U R	                  S5      /U R	                  S5      U R	                  S5      /U R	                  S5      U R	                  S5      /U R	                  S5      U R	                  S5      /U R	                  S5      U R	                  S5      /U R	                  S5      U R	                  S5      /U R	                  S5      U R	                  S5      /U R	                  S5      U R	                  S5      /U R	                  S5      U R	                  S5      /U R	                  S5      U R	                  S5      /U R	                  S5      U R	                  S5      /U R	                  S5      U R	                  S5      /U R	                  S5      U R	                  S5      /U R	                  S5      U R	                  S5      /U R	                  S5      U R	                  S5      /U R	                  S5      U R	                  S5      //S.S.S0 0S.SS/ SQSS0S.S	S	SS	S S	S	S SSSS	S.S	S	S	SS	S	S	S.S S	S SSS	S.S S	SS	S	S	S.S S SS 0S.	S S S.S S S.S.[
        0 S[        _S[        _S[        _S[        _S[        _S[        _S[        _S[        _S[        _S[        _S[        _S[        _S[        _S[        _S[        _S[        _S[        _[        [        [        [        [         [        ["        [        [        [        ["        [        S.ESS0S.5      $ )Nr)   ZondaEE  CORSTspotmarginFswapfutureoption	addMarginborrowCrossMarginborrowIsolatedMarginborrowMargincancelAllOrderscancelOrdercancelOrderscloseAllPositionsclosePositioncreateDepositAddresscreateOrdercreateReduceOnlyOrderfetchAllGreeksfetchBalancefetchBorrowInterestfetchBorrowRatefetchBorrowRateHistoriesfetchBorrowRateHistoryfetchBorrowRatesfetchBorrowRatesPerSymbolfetchCrossBorrowRatefetchCrossBorrowRatesfetchCurrenciesfetchDepositfetchDepositAddressfetchDepositAddressesfetchDepositAddressesByNetworkfetchDepositsfetchFundingHistoryfetchFundingIntervalfetchFundingIntervalsfetchFundingRatefetchFundingRateHistoryfetchFundingRatesfetchGreeksfetchIndexOHLCVfetchIsolatedBorrowRatefetchIsolatedBorrowRatesfetchIsolatedPositionsfetchLedgerfetchLeveragefetchLeveragesfetchLeverageTiersfetchLiquidationsfetchLongShortRatiofetchLongShortRatioHistoryfetchMarginAdjustmentHistoryfetchMarginModefetchMarginModesfetchMarketLeverageTiersfetchMarketsfetchMarkOHLCVfetchMarkPricefetchMarkPricesfetchMyLiquidationsfetchMySettlementHistoryfetchMyTrades
fetchOHLCVfetchOpenInterestfetchOpenInterestHistoryfetchOpenInterestsfetchOpenOrderfetchOpenOrdersfetchOptionfetchOptionChainfetchOrderBookfetchOrderBooksfetchPositionfetchPositionHistoryfetchPositionModefetchPositionsfetchPositionsForSymbolfetchPositionsHistoryfetchPositionsRiskfetchPremiumIndexOHLCVfetchSettlementHistoryfetchTickerfetchTickers	fetchTimefetchTradesfetchTradingFeefetchTradingFeesfetchTransactionFeefetchTransactionFeesfetchTransactionsfetchTransferfetchUnderlyingAssetsfetchVolatilityHistoryfetchWithdrawalfetchWithdrawalsreduceMarginrepayCrossMarginrepayIsolatedMarginrepayMarginsetLeverage	setMargin)setMarginModesetPositionModetransferwithdraw6018030090018003600720014400216004320086400259200604800)1m3m5m15m30m1h2h4h6h12h1d3d1wzzondacrypto.exchangez-https://auth.zondaglobal.com/ref/jHlbB4mIkdS1zdhttps://user-images.githubusercontent.com/1294454/159202310-a0e38007-5e7c-4ba9-a32f-c8263a0291fe.jpgzhttps://zondaglobal.comzhttps://{hostname}/API/Publicz-https://{hostname}/API/Trading/tradingApi.phpzhttps://api.{hostname}/rest)publicprivatev1_01Publicv1_01Privatez"https://docs.zondacrypto.exchange/z https://github.com/BitBayNet/APIz2https://zondaglobal.com/en/helpdesk/zonda-exchangez1https://zondaglobal.com/legal/zonda-exchange/fees)referrallogowwwapidocsupportfeesget)z{id}/allz{id}/marketz{id}/orderbookz{id}/tickerz{id}/tradespost)	infotradecancel	orderbookordersr   r   historytransactions)ztrading/tickerztrading/ticker/{symbol}ztrading/statsztrading/stats/{symbol}ztrading/orderbook/{symbol}ztrading/transactions/{symbol}z,trading/candle/history/{symbol}/{resolution})z&api_payments/deposits/crypto/addresseszpayments/withdrawal/{detailId}zpayments/deposit/{detailId}ztrading/offerztrading/stop/offertrading/config/{symbol}ztrading/history/transactionszbalances/BITBAY/historybalances/BITBAY/balancez#fiat_cantor/rate/{baseId}/{quoteId}zfiat_cantor/historyz>client_payments/v2/customer/crypto/{currency}/channels/depositzAclient_payments/v2/customer/crypto/{currency}/channels/withdrawalz.client_payments/v2/customer/crypto/deposit/feez1client_payments/v2/customer/crypto/withdrawal/fee)
ztrading/offer/{symbol}ztrading/stop/offer/{symbol}r   r   z7balances/BITBAY/balance/transfer/{source}/{destination}zfiat_cantor/exchangezapi_payments/withdrawals/cryptozapi_payments/withdrawals/fiatz*client_payments/v2/customer/crypto/depositz-client_payments/v2/customer/crypto/withdrawalz*trading/offer/{symbol}/{id}/{side}/{price}z/trading/stop/offer/{symbol}/{id}/{side}/{price}zbalances/BITBAY/balance/{id})r   r   deleteputz0.0z0.001)makertaker
percentage	tierBasedz0.0030z0.00430z0.00421250z0.00413750z0.00407500z0.003910000z0.003815000z0.003720000z0.003625000z0.003537500z0.003450000z0.003375000z0.0032100000z0.0031150000200000z0.0029250000z0.0028375000z0.0027500000z0.0026625000z0.0025875000z0.0024z0.0023z0.0022z0.0021z0.0020z0.0019z0.0018z0.0017)r   r   )r   r   r   r   tiersr   )tradingfiatfunding!v1_01PublicGetTradingTickerSymbolv1_01PublicGetTradingTicker)EURUSDGBPPLNfillResponseFromRequest)fetchTickerMethodfetchTickersMethodfiatCurrenciesr   )IOCFOKPOGTD)
marginModetriggerPricetriggerDirectiontriggerPriceTypestopLossPricetakeProfitPriceattachedStopLossTakeProfittimeInForcehedgedtrailingleveragemarketBuyByCostmarketBuyRequiresPriceselfTradePreventionicebergi )r   limitdaysBack	untilDayssymbolRequiredd   )r   r  triggerr   r  r  )	sandboxr@   createOrdersrn   
fetchOrderrt   fetchOrdersfetchClosedOrdersro   )linearinverse)r1   r3   r4   400401402403404405406408501502503504505506509510FUNDS_NOT_SUFFICIENT)"OFFER_FUNDS_NOT_EXCEEDING_MINIMUMSOFFER_NOT_FOUND&OFFER_WOULD_HAVE_BEEN_PARTIALLY_FILLEDACTION_LIMIT_EXCEEDEDUNDER_MAINTENANCEREQUEST_TIMESTAMP_TOO_OLDPERMISSIONS_NOT_SUFFICIENTINVALID_STOP_RATETIMEOUTRESPONSE_TIMEOUTACTION_BLOCKEDINVALID_HASH_SIGNATUREGGCzGlobal Game Coin)idname	countries	rateLimithas
timeframeshostnameurlsr   r   optionsfeaturesprecisionMode
exceptionscommonCurrencies)deep_extendsuperr)   describeparse_numberr&   r   r    r   r   r%   r   r   r!   r"   r#   r$   r   )self	__class__s    R/home/james-whalen/.local/lib/python3.13/site-packages/ccxt/async_support/zonda.pyr>  zonda.describe   s   eT ; =kkk %k 	k
 %k %k Uk $Uk 'k k "5k tk k $Uk  k  '!k" t#k$ (%k& !%'k( )k* &u+k, "5-k. +E/k0 )%1k2 #E3k4 ,U5k6 '7k8 (9k: "5;k< =k> &t?k@ (AkB 1%CkD  EkF &uGkH 'IkJ (KkL #EMkN *5OkP $UQkR uSkT "5UkV *5WkX +EYkZ )%[k\ t]k^  _k` !%akb %eckd $Uekf &ugkh -eikj /kkl "5mkn #Eokp +Eqkr skt !%ukv !%wkx "5ykz &u{k| +E}k~  k@ dAkB $UCkD +EEkF %eGkH !%IkJ "4KkL uMkN #EOkP !$QkR "5SkT  UkV 'WkX $UYkZ !%[k\ *5]k^ (_k` %eakb )%ckd )%ekf tgkh ikj Ukkl tmkn "5okp #Eqkr &uskt 'ukv $Twkx  ykz ({k| )%}k~ "5k@ #DAkB CkD #EEkF &uGkH uIkJ uKkL UMkN "'#(  UkZ  /K~0=N#@$A	 96 PK&    
  
 " EI
 7E%!EHV "..u5!..w7"&!&	 "..x8!..x8"&!% "..x8$:K:KC:PQ!..x8$:K:KF:ST!..x8$:K:KF:ST!..x8$:K:KF:ST!..x8$:K:KG:TU!..x8$:K:KG:TU!..x8$:K:KG:TU!..x8$:K:KG:TU!..x8$:K:KG:TU!..x8$:K:KG:TU!..x8$:K:KG:TU!..x8$:K:KH:UV!..x8$:K:KH:UV!..x8$:K:KH:UV!..x8$:K:KH:UV!..x8$:K:KH:UV!..x8$:K:KH:UV!..x8$:K:KH:UV!..x8$:K:KH:UV'", "..x8$:K:KC:PQ!..x8$:K:KF:ST!..x8$:K:KF:ST!..x8$:K:KF:ST!..x8$:K:KG:TU!..x8$:K:KG:TU!..x8$:K:KG:TU!..x8$:K:KG:TU!..x8$:K:KG:TU!..x8$:K:KG:TU!..x8$:K:KG:TU!..x8$:K:KH:UV!..x8$:K:KH:UV!..x8$:K:KH:UV!..x8$:K:KH:UV!..x8$:K:KH:UV!..x8$:K:KH:UV!..x8$:K:KH:UV!..x8$:K:KH:UV'"-+1f s<| &I&C">-t	  %&+(,,1,0).+06:#'#'"&#(	( #($)$)+/27/4#()$, %)&+!%$*%+*/& #'&+!$#($)*/( $()-#U-^ ##
 ##g7p ' } |  |  |	 
 |  |  (  |  *  *  |  }  *  ' " }# $ y% & '(9' ( 7C#0:R):%2-9.>%1($1"2*=? D )!u}@
 } }	    c                    #    U R                  U5      I Sh  vN nU R                  US0 5      n[        UR                  5       5      nU R	                  U5      $  NA7f)z

https://docs.zondacrypto.exchange/reference/ticker-1

retrieves data on all markets for zonda
:param dict [params]: extra parameters specific to the exchange API endpoint
:returns dict[]: an array of objects representing market data
Nitems)r   
safe_valuelistvaluesparse_markets)r@  paramsresponserF  marketss        rB  fetch_marketszonda.fetch_markets  sU      99&AA( '26u||~&!!'**- Bs   AAAAc                    U R                  US0 5      nU R                  US5      nU R                  US0 5      nU R                  US0 5      nU R                  US5      nU R                  US5      nU R                  U5      nU R                  U5      n	U R                  U R                  S0 5      n
U R                  U R                  S/ 5      nU R                  X5      (       d  U R                  X5      (       a  U R                  U R                  S0 5      n
0 S	U_S
US-   U	-   _SU_SU	_SS _SU_SU_SS _SS_SS_SS_SS_SS_SS_SS _SS_SS _S U R                  U
S5      U R                  U
S5      S S S S S U R                  U R                  U R                  US5      5      5      U R                  U R                  U R                  US5      5      5      S .S S S!.U R                  US"5      S S!.S S S!.S S S!.S#.S US$.E$ )%Nmarketcodefirstsecondcurrencyr   r   r   r/  symbol/basequotesettlebaseIdquoteIdsettleIdtyper1   Tr2   Fr3   r4   r5   activecontractr  r   r   scale)amountprice)minmaxminOffer)r   rb  rc  cost)r  r   r   contractSizeexpiryexpiryDatetime
optionTypestrike	precisionlimitscreatedr   )	rG  safe_stringsafe_currency_coder   r7  in_arraysafe_numberr?  parse_precision)r@  itemrQ  r/  rS  rT  r[  r\  rX  rY  r   r   s               rB  parse_marketzonda.parse_market  s   x4ff-426!!%4""6:6&&v.''0tyy)R87GL==..$--2V2V??499fb9D2
"2
dSj5(2
 D2
 U	2

 d2
 f2
 w2
 2
 F2
 D2
 e2
 E2
 e2
 e2
 d2
  !2
" d#2
$ %%dG4%%dG4 "++D,@,@AQAQRWY`Aa,bc**4+?+?@P@PQWY`@a+bc  
  ++E:>
  
  $ c2
 2	
rD  NrV  sincer  c                    #    U R                  5       I Sh  vN   0 nU R                  U R                  XT5      5      I Sh  vN nU R                  US/ 5      nU R	                  USX#SS05      $  NW N/7f)a  

https://docs.zondacrypto.exchange/reference/active-orders

fetch all unfilled currently open orders
:param str symbol: not used by zonda fetchOpenOrders
:param int [since]: the earliest time in ms to fetch open orders for
:param int [limit]: the maximum number of  open orders structures to retrieve
:param dict [params]: extra parameters specific to the exchange API endpoint
:returns Order[]: a list of `order structures <https://docs.ccxt.com/#/?id=order-structure>`
NrF  statusopen)load_marketsv1_01PrivateGetTradingOfferextend	safe_listparse_orders)r@  rV  rx  r  rK  requestrL  rF  s           rB  fetch_open_orderszonda.fetch_open_orders  ss      !!!99$++g:VWWx"5  eXv<NOO 	" Xs!   A2A.)A2 A0.A20A2orderrQ  c                    U R                  US5      nU R                  X2S5      nU R                  US5      nU R                  US5      nU R                  US5      nU R                  US5      nU R	                  0 SU R                  US5      _SS _S	U_S
U_SU R                  U5      _SS _SS _SU_SU R                  US5      _SS _SU_SU R                  US5      _SU R                  US5      _SS _SU_SS _SS _US S S S.EU5      $ )NrQ  -timestartAmountcurrentAmountpostOnlyr/  clientOrderIdr   	timestampdatetimelastTradeTimestamprz  rV  r^  moder   side	offerTyperc  rater   rb  rg  filled)	remainingaveragefeetrades)rp  safe_symbolsafe_integerrG  
safe_orderiso8601safe_string_lower)	r@  r  rQ  marketIdrV  r  rb  r  r  s	            rB  parse_orderzonda.parse_order  s   4 ##E84!!(C8%%eV4	!!%7$$UO<	??5*5  
$""5$/ 
T 
 E 
 	 

 Y/ 
 !$ 
 d 
 f 
 D$$UF3 
 4 
  
 D**5+> 
 T%%eV4 
 D 
 f 
  D! 
" d# 
$ #+ 
, - 	rD  c                   #    U R                  5       I Sh  vN   0 nU(       a'  U R                  U5      /nU R                  U5      nXeS'   SU R                  U R	                  XT5      5      0nU R                  U5      I Sh  vN nU R                  US5      n	U R                  U	SX#5      n
Uc  U
$ U R                  X5      $  N NA7f)a  

https://docs.zondacrypto.exchange/reference/transactions-history

fetch all trades made by the user
:param str symbol: unified market symbol
:param int [since]: the earliest time in ms to fetch trades for
:param int [limit]: the maximum number of trades structures to retrieve
:param dict [params]: extra parameters specific to the exchange API endpoint
:returns Trade[]: a list of `trade structures <https://docs.ccxt.com/#/?id=trade-structure>`
NrM  queryrF  )	r|  	market_idrV  jsonr~  )v1_01PrivateGetTradingHistoryTransactionsrG  parse_tradesfilter_by_symbol)r@  rV  rx  r  rK  r  rM  r  rL  rF  results              rB  fetch_my_tradeszonda.fetch_my_tradesL  s      !!!~~f-.G[[(F!(I		$++g*F GHGGNN* '2""5$=>M$$V44A 	" Os#   CCA*CCA CCc                    U R                  US5      nUc*  [        U R                  S-   U R                  U5      -   5      eSU0n[	        S[        U5      5       Hh  nX$   nU R                  US5      nU R                  U5      nU R                  5       nU R                  US5      US'   U R                  US5      US	'   XU'   Mj     U R                  U5      $ )
Nbalancesz empty balance response r   r   rU  lockedFundsusedavailableFundsfree)
rG  r   r/  r  rangelenrp  rq  accountsafe_balance)	r@  rL  r  r  ibalance
currencyIdrR  r  s	            rB  parse_balancezonda.parse_balancez  s    ??8Z8*D DtyyQYGZ Z[[)q#h-(AkG))':>J**:6DllnG"..wFGFO"..w8HIGFO"4L )   ((rD  c                    #    U R                  5       I Sh  vN   U R                  U5      I Sh  vN nU R                  U5      $  N. N7f)a?  

https://docs.zondacrypto.exchange/reference/list-of-wallets

query for balance and get the amount of funds available for trading or funds locked in orders
:param dict [params]: extra parameters specific to the exchange API endpoint
:returns dict: a `balance structure <https://docs.ccxt.com/#/?id=balance-structure>`
N)r|  $v1_01PrivateGetBalancesBITBAYBalancer  )r@  rK  rL  s      rB  fetch_balancezonda.fetch_balance  sE      !!!BB6JJ!!(++ 	"Js   A	AA	AA	A	c           	        #    U R                  5       I Sh  vN   U R                  U5      nSUS   0nU R                  U R                  XS5      5      I Sh  vN nU R	                  US/ 5      nU R	                  US/ 5      nU R                  US5      n	US   U R                  USS5      U R                  USS5      U	U R                  U	5      U R                  US	5      S
.$  N N7f)a  

https://docs.zondacrypto.exchange/reference/orderbook-2

fetches information on open orders with bid(buy) and ask(sell) prices, volumes and other data
:param str symbol: unified symbol of the market to fetch the order book for
:param int [limit]: the maximum amount of order book entries to return
:param dict [params]: extra parameters specific to the exchange API endpoint
:returns dict: A dictionary of `order book structures <https://docs.ccxt.com/#/?id=order-book-structure>` indexed by market symbols
NrV  r/  buysellr  racaseqNo)rV  bidsasksr  r  nonce)r|  rQ  $v1_01PublicGetTradingOrderbookSymbolr~  rG  r  parse_bids_asksr  )
r@  rV  r  rK  rQ  r  rL  rawBidsrawAsksr  s
             rB  fetch_order_bookzonda.fetch_order_book  s      !!!V$fTl
 BB4;;wC_``$ //(E26//(FB7%%h<	X&(($=(($="Y/&&x9
 	
5 	"
 as"   C$C ?C$C"B
C$"C$tickerc                 h   U R                  US5      nU R                  USS5      nU R                  XB5      nU R                  US5      nU R                  US5      nU R	                  0 SU R                  XB5      _SU_SU R                  U5      _S	U R                  US
5      _SU R                  US5      _SU R                  US5      _SS _SU R                  US5      _SS _SS _SU R                  US5      _SU_SU_SU R                  US5      _SS _SS _SS _U R                  US5      S US.EU5      $ )NrQ  rR  mr  r  rV  r  r  highhlowlbid
highestBid	bidVolumeask	lowestAsk	askVolumevwapr{  r24hcloselastpreviousClosepreviousRatechanger   r  v)
baseVolumequoteVolumer   )	rG  safe_string_2safe_marketr  safe_tickerr  r  rp  rs  )r@  r  rQ  tickerMarketr  r  r  s          rB  parse_tickerzonda.parse_ticker  s   L vx8%%lFC@!!(3%%ff5	vv. !
d&&x8!
!
 Y/!
 D$$VS1	!

 4##FC0!
 4##FL9!
 !
 4##FK8!
 !
 D!
 D$$VV4!
 T!
 D!
 T__V^D!
 d!
  $!!
" t#!
$ **637)!
* + 	rD  c                   #    U R                  5       I Sh  vN   U R                  U5      nSUS   0nSnU R                  U R                  SU5      nU R	                  USSU5      nSnXu:X  a)  U R                  U R                  XB5      5      I Sh  vN nOGUS:X  a)  U R                  U R                  XB5      5      I Sh  vN nO[        U R                  S-   5      eU R                  US	S
5      n	U R                  X5      $  N Nr NE7f)aV  
v1_01PublicGetTradingTickerSymbol retrieves timestamp, datetime, bid, ask, close, last, previousClose, v1_01PublicGetTradingStatsSymbol retrieves high, low, volume and opening price of an asset

https://docs.zondacrypto.exchange/reference/market-statistics

:param str symbol: unified symbol of the market to fetch the ticker for
:param dict [params]: extra parameters specific to the exchange API endpoint
:param str [params.method]: v1_01PublicGetTradingTickerSymbol(default) or v1_01PublicGetTradingStatsSymbol
:returns dict: a `ticker structure <https://docs.ccxt.com/#/?id=ticker-structure>`
NrV  r/  r   r   method v1_01PublicGetTradingStatsSymbolzo fetchTicker params["method"] must be "v1_01PublicGetTradingTickerSymbol" or "v1_01PublicGetTradingStatsSymbol"r  stats)r|  rQ  rp  r7  r  r   r~  r  r   r/  safe_value_2r  )
r@  rV  rK  rQ  r  r  defaultMethodr   rL  r  s
             rB  fetch_tickerzonda.fetch_ticker  s     !!!V$fTl
 5((7JFS ..vxATVcd&!CCDKKPWD`aaH: "DD!BB4;;wC_``H TWW  (Y  Y  Z  Z!!(Hg>  //q 	" b< as5   DDA9DD.D?D ADDDsymbolsc                   #    U R                  5       I Sh  vN   SnU R                  U R                  SU5      nU R                  USSU5      nSnXS:X  a  U R	                  U5      I Sh  vN nO8US:X  a  U R                  U5      I Sh  vN nO[        U R                  S-   5      eU R                  US5      nU R                  Xq5      $  N Nb ND7f)a  
@ignore
       v1_01PublicGetTradingTicker retrieves timestamp, datetime, bid, ask, close, last, previousClose for each market, v1_01PublicGetTradingStats retrieves high, low, volume and opening price of each market

       https://docs.zondacrypto.exchange/reference/market-statistics

       :param str[]|None symbols: unified symbols of the markets to fetch the ticker for, all market tickers are returned if not assigned
       :param dict [params]: extra parameters specific to the exchange API endpoint
       :param str [params.method]: v1_01PublicGetTradingTicker(default) or v1_01PublicGetTradingStats
       :returns dict: a dictionary of `ticker structures <https://docs.ccxt.com/#/?id=ticker-structure>`
       Nr   r   r  v1_01PublicGetTradingStatszd fetchTickers params["method"] must be "v1_01PublicGetTradingTicker" or "v1_01PublicGetTradingStats"rF  )
r|  rp  r7  r  r   r  r   r/  	safe_dictparse_tickers)r@  r  rK  r  r  r   rL  rF  s           rB  fetch_tickerszonda.fetch_tickersK  s      !!!.((7KVT!//BVXef'!==fEEH@  #??!<<VDDH" TWW  (N  N  O  Ox1!!%11u 	" FB Es5   CC
AC)C*C	C
ACCCrR  c                 ,  #    / nUb%  U R                  U5      nUR                  US   5        SU0nUb  X'S'   Ub  X7S'   U R                  Xt5      nU R                  SU R	                  U5      05      I Sh  vN nUS   n	U R                  U	SX#5      $  N7f)a  
fetch the history of changes, actions done by the user or operations that altered the balance of the user

https://docs.zondacrypto.exchange/reference/operations-history

:param str [code]: unified currency code, default is None
:param int [since]: timestamp in ms of the earliest ledger entry, default is None
:param int [limit]: max number of ledger entries to return, default is None
:param dict [params]: extra parameters specific to the exchange API endpoint
:returns dict: a `ledger structure <https://docs.ccxt.com/#/?id=ledger>`
Nr/  balanceCurrenciesfromTimer  r  rF  )rU  appendr~  $v1_01PrivateGetBalancesBITBAYHistoryr  parse_ledger)
r@  rR  rx  r  rK  r  rU  r  rL  rF  s
             rB  fetch_ledgerzonda.fetch_ledger  s      }}T*H$$Xd^4!2
 "'J$G++g.BBGTYYW^M_C`aa!  e;; bs   A3B5B6Bru  rU  c                    U R                  US5      nU R                  US0 5      nU R                  US5      nU R                  XR5      nU R                  US0 5      nU R                  US5      nSn[        R
                  " US5      (       a  Sn[        R                  " U5      nU R                  US	0 5      n	U R                  US
0 5      n
U R                  UU R                  US5      US U R                  US5      S U R                  U R                  US5      5      U R                  U5      U R                  U5      U R                  U	S5      U R                  U
S5      SUU R                  U5      S S.U5      $ )Nr  r  rU  r  totalinr   outfundsBefore
fundsAfter	historyIddetailIdr^  ok)r   r/  	directionr  referenceIdreferenceAccountr^  rU  rb  beforeafterrz  r  r  r  )r  rG  rp  safe_currencyr'   	string_lt
string_negsafe_ledger_entryparse_ledger_entry_typerq  r?  rs  r  )r@  ru  rU  r  r  r  r  rb  r	  r  r  s              rB  parse_ledger_entryzonda.parse_ledger_entry  sw   X %%dF3	//$	26%%gz:
%%j;x4!!&'2	VS))I''/F oodM2>__T<<
%%""45"++D*= $001A1A$1OP//
;''/&&{G<%%j':"Y/'
  ! 	rD  c                 H    SSSSSSSSSSSSSSS.nU R                  X!U5      $ )Ntransactionr  r   )	ADD_FUNDSBITCOIN_GOLD_FORKCREATE_BALANCEFUNDS_MIGRATIONWITHDRAWAL_LOCK_FUNDSWITHDRAWAL_SUBTRACT_FUNDSWITHDRAWAL_UNLOCK_FUNDSTRANSACTION_COMMISSION_OUTCOMETRANSACTION_COMMISSION_RETURN TRANSACTION_OFFER_ABORTED_RETURN"TRANSACTION_OFFER_COMPLETED_RETURNTRANSACTION_POST_INCOMETRANSACTION_POST_OUTCOMETRANSACTION_PRE_LOCKINGrp  )r@  r^  typess      rB  r  zonda.parse_ledger_entry_type  sH    &!.+,%2)6'4.3-20729'.(/'.
  T22rD  c           	          U R                  US0 5      nU R                  US5      U R                  US5      U R                  US5      U R                  US5      U R                  US5      U R                  US5      /$ )N   r   or  r  cr  )rG  r  rs  )r@  ohlcvrQ  rS  s       rB  parse_ohlcvzonda.parse_ohlcv  s     q"-eQ'UC(UC(UC(UC(UC(
 	
rD  r   	timeframec                 *  #    U R                  5       I Sh  vN   U R                  U5      nUS   S-   US   -   nUU R                  U R                  X"5      S.nUc  SnO[	        US5      nU R                  U5      n	XI-  S-  n
Uc  U R                  5       US	'   US	   U
-
  US
'   OX8S
'   U R                  US
   U
5      US	'   U R                  U R                  X5      5      I Sh  vN nU R                  US/ 5      nU R                  XX#U5      $  N N,7f)aM  

https://docs.zondacrypto.exchange/reference/candles-chart

fetches historical candlestick data containing the open, high, low, and close price, and the volume of a market
:param str symbol: unified symbol of the market to fetch OHLCV data for
:param str timeframe: the length of time each candle represents
:param int [since]: timestamp in ms of the earliest candle to fetch
:param int [limit]: the maximum amount of candles to fetch
:param dict [params]: extra parameters specific to the exchange API endpoint
:returns int[][]: A list of candles ordered, open, high, low, close, volume
Nr[  r  r\  )rV  
resolutionr  i*  r/   tofromrF  )r|  rQ  rp  r4  rd  parse_timeframemillisecondssum2v1_01PublicGetTradingCandleHistorySymbolResolutionr~  r  parse_ohlcvs)r@  rV  r/  rx  r  rK  rQ  tradingSymbolr  duration	timerangerL  rF  s                rB  fetch_ohlcvzonda.fetch_ohlcv  s0     !!!V$x(3.	1BB#**4??IQ
 =Eu%E''	2$t+	= --/GDM%dmi7GFO#FO HHWV_i@GDMPPQUQ\Q\]dQmnn x"5  	%HHC 	"* os"   DDCD$D%+DDr   c                 J   U R                  USS5      nU R                  USS5      nU R                  US5      nS nUb  U(       a  SOSnU R                  USS	5      nU R                  US
S5      nU R	                  US5      n	U R	                  US5      n
U R                  XS5      nUS   nS nU	b  US:X  a  US   OUS   nUU	S.nU R	                  US5      nS nUb  U(       a  SOSnU R                  U R	                  US5      UUU R                  U5      UUUUUS UUUS.U5      $ )Nr  t
userActiontywasTakerr   r   r  rrb  acommissionValuerQ  r  rV  r  rX  rY  )rU  rg  offerIdr  r/  )r/  r  r  r  rV  r^  r  rc  rb  rg  takerOrMakerr  r   )safe_integer_2safe_string_lower_2rG  r  rp  r  
safe_trader  )r@  r   rQ  r  r  rB  rG  priceStringamountStringfeeCostStringr  rV  r  feeCurrencyr  r^  s                   rB  parse_tradezonda.parse_trade6  sg   D ''vs;	''|TB??5*5 &.7GL((<))%3?((0AB##E84!!(C8!$-1U]&.K'%C   	2#7D""5$/"Y/ "( 
  	rD  c                 D  #    U R                  5       I Sh  vN   U R                  U5      nUS   S-   US   -   nSU0nUb  US-
  US'   Ub  X7S'   U R                  U R                  Xt5      5      I Sh  vN nU R	                  US	5      n	U R                  XX#5      $  N N*7f)
a  

https://docs.zondacrypto.exchange/reference/last-transactions

get the list of most recent trades for a particular symbol
:param str symbol: unified symbol of the market to fetch trades for
:param int [since]: timestamp in ms of the earliest trade to fetch
:param int [limit]: the maximum amount of trades to fetch
:param dict [params]: extra parameters specific to the exchange API endpoint
:returns Trade[]: a list of `trade structures <https://docs.ccxt.com/#/?id=public-trades>`
Nr[  r  r\  rV  r)  r  r  rF  )r|  rQ  'v1_01PublicGetTradingTransactionsSymbolr~  r  r  )
r@  rV  rx  r  rK  rQ  r9  r  rL  rF  s
             rB  fetch_tradeszonda.fetch_trades  s      !!!V$x(3.	1BBm
 "'!)GJ$GEEdkkRYFbccx1  == 	" ds"   B BAB 3B4)B B r^  r  rb  rc  c                   #    U R                  5       I Sh  vN   U R                  U5      nUS   S-   US   -   n[        U R                  X5      5      nUUR	                  5       US.n	U R                  USS5      n
U
SLnUS:H  nUS	:H  nUS
:H  =(       d    U=(       a    UnUS:H  =(       d    U=(       a    UnU=(       d    UnU(       d  U(       a#  U R                  X5      U	S'   U(       a  S
OSU	S'   O5U(       d  U(       a  U(       a  SOS	U	S'   O[        U R                  S-   5      eU R                  USS/5      nSnU(       a\  U(       d  [        U R                  S-   5      eU R                  X5      U	S'   U R                  U R                  X5      5      I Sh  vN nO(U R                  U R                  X5      5      I Sh  vN nU R                  USS5      nU R                  USS5      nU(       a  SOSnU R                  US5      nU R!                  0 SU_SU_SS_SS_SS_SU_SU_SU_S U_S!U_S"U_S#S_S$S_S%S_S&S_S'S_S(U_S)S0E5      $  GN> N N7f)*aO  
create a trade order

https://docs.zondacrypto.exchange/reference/new-order

:param str symbol: unified symbol of the market to create an order in
:param str type: 'market' or 'limit'
:param str side: 'buy' or 'sell'
:param float amount: how much of currency you want to trade in units of base currency
:param float [price]: the price at which the order is to be fulfilled, in units of the quote currency, ignored in market orders
:param dict [params]: extra parameters specific to the exchange API endpoint
:returns dict: an `order structure <https://docs.ccxt.com/#/?id=order-structure>`
Nr[  r  r\  )rV  r  rb  	stopPricer   r  rQ  z
stop-limitzstop-marketr  r  z createOrder() invalid typez[ createOrder() zonda requires `triggerPrice` parameter for stop-limit or stop-market ordersstopRaterF  stopOfferId	completedFclosedr{  r   r/  r   r  r  r  rz  rV  r^  r  rc  rb  rg  r  r  r  r  r  r  )r|  rQ  floatamount_to_precisionupperr  price_to_precisionr   r/  omit&v1_01PrivatePostTradingStopOfferSymbolr~  "v1_01PrivatePostTradingOfferSymbolr  	safe_boolrG  r  )r@  rV  r^  r  rb  rc  rK  rQ  r9  r  r   isStopLossPriceisLimitOrderisMarketOrderisStopLimitisStopMarketisStopOrderrL  r/  rY  rz  r   s                         rB  create_orderzonda.create_order  s     !!!V$x(3.	1BBt//?@#

 ))&+O't3w(|+R1Q/},S1R?!1\;"55fDGFO.9lwGFOl/;mGFO*G GHH6K#AB"#DGG  /L  %L  M  M"&"9"9&"PGJ!HHU\IeffH!DDT[[QXEabbHn )]CNN8[%@	&Fx@  
" 
H 
  
 	 

 !$ 
 f 
 f 
 D 
 D 
 U 
 f 
 D 
 d 
  
 t 
  4! 
" l# 
$ T% 
  	u 	": gbs5   IIFII(IIBIIIr/  c                   #    U R                  US5      nUc  [        U R                  S-   5      eU R                  US5      nUc  [        U R                  S-   5      eU R	                  5       I Sh  vN   U R                  U5      nUS   S-   US   -   nUUUUS	.nU R                  U R                  X5      5      I Sh  vN n	U R                  U	5      $  Nc N7f)
aO  

https://docs.zondacrypto.exchange/reference/cancel-order

cancels an open order
:param str id: order id
:param str symbol: unified symbol of the market the order was made in
:param dict [params]: extra parameters specific to the exchange API endpoint
:returns dict: An `order structure <https://docs.ccxt.com/#/?id=order-structure>`
r  Nz; cancelOrder() requires a `side` parameter("buy" or "sell")rc  z< cancelOrder() requires a `price` parameter(float or string)r[  r  r\  )rV  r/  r  rc  )	rp  r   r/  rG  r|  rQ  /v1_01PrivateDeleteTradingOfferSymbolIdSidePricer~  r  )
r@  r/  rV  rK  r  rc  rQ  r9  r  rL  s
             rB  cancel_orderzonda.cancel_order  s      /<*g ghh0=*h hii!!!V$x(3.	1BB#	
 MMdkkZaNjkk )) 	" ls%   A.C0C1AC>C?CCc                 2    SSSS.nU R                  X!S5      $ )NT)r   r   r   F)rb  )r@  rU  r   s      rB  is_fiatzonda.is_fiat6  s%     

 ~~n>>rD  c                     U R                  US5      nU R                  US5      nU R                  U5        UU R                  X25      S UU R                  US5      S.$ )NrU  addresstag)r   rU  networkrs  rt  )rp  check_addressrq  )r@  depositAddressrU  r  rs  s        rB  parse_deposit_addresszonda.parse_deposit_address>  sg     %%njA
"">9=7#"//
E##NE:
 	
rD  c                 ,  #    U R                  5       I Sh  vN   U R                  U5      nSUS   0nU R                  U R                  XB5      5      I Sh  vN nU R	                  US5      nU R                  US5      nU R                  Xs5      $  Ny N;7f)a  

https://docs.zondacrypto.exchange/reference/deposit-addresses-for-crypto

fetch the deposit address for a currency associated with self account
:param str code: unified currency code
:param dict [params]: extra parameters specific to the exchange API endpoint
:param str [params.walletId]: Wallet id to filter deposit adresses.
:returns dict: an `address structure <https://docs.ccxt.com/#/?id=address-structure>`
NrU  r/  datar   )r|  rU  1v1_01PrivateGetApiPaymentsDepositsCryptoAddressesr~  rG  r  rx  )r@  rR  rK  rU  r  rL  r{  rS  s           rB  fetch_deposit_addresszonda.fetch_deposit_addressS  s      !!!==&
 OOPTP[P[\cPlmm x0tQ'))%::+ 	"
 ns!   BB?BB:BBcodesc                    #    U R                  5       I Sh  vN   U R                  U5      I Sh  vN nU R                  US5      nU R                  XA5      $  N@ N)7f)a  

https://docs.zondacrypto.exchange/reference/deposit-addresses-for-crypto

fetch deposit addresses for multiple currencies and chain types
:param str[]|None codes: zonda does not support filtering filtering by multiple codes and will ignore self parameter.
:param dict [params]: extra parameters specific to the exchange API endpoint
:returns dict: a list of `address structures <https://docs.ccxt.com/#/?id=address-structure>`
Nr{  )r|  r|  r  parse_deposit_addresses)r@  r  rK  rL  r{  s        rB  fetch_deposit_addresseszonda.fetch_deposit_addressesu  sX      !!!OOPVWW ~~h/++D88! 	"Ws   AAAA(AAfromAccount	toAccountc                 |  #    U R                  5       I Sh  vN   U R                  U5      nUUUU R                  X5      S.nU R                  U R	                  Xu5      5      I Sh  vN nU R                  X5      n	U R                  U R                  S0 5      n
U R                  U
SS5      nU(       a  X)S'   U	$  N NT7f)a  

https://docs.zondacrypto.exchange/reference/internal-transfer

transfer currency internally between wallets on the same account
:param str code: unified currency code
:param float amount: amount to transfer
:param str fromAccount: account to transfer from
:param str toAccount: account to transfer to
:param dict [params]: extra parameters specific to the exchange API endpoint
:returns dict: a `transfer structure <https://docs.ccxt.com/#/?id=transfer-structure>`
N)sourcedestinationrU  fundsr   r   Trb  )	r|  rU  currency_to_precision>v1_01PrivatePostBalancesBITBAYBalanceTransferSourceDestinationr~  parse_transferrG  r7  rb  )r@  rR  rb  r  r  rK  rU  r  rL  r   transferOptionsr   s               rB  r   zonda.transfer  s      !!!==&!$//=	
 \\]a]h]hip]yzz: &&x://$,,
BG"&..B[]a"b"!'XU 	" {s#   B<B8AB<%B:&AB<:B<r   c                 2   U R                  US5      nU R                  US0 5      nU R                  US5      nU R                  US0 5      nU R                  US5      nU R                  US5      nUS S S U R                  X5      S UUU R                  U5      S.	$ )Nrz  r3  r/  r2  rU  )	r   r/  r  r  rU  rb  r  r  rz  )rp  rG  rq  parse_transfer_status)	r@  r   rU  rz  r  fromIdr2  toIdr  s	            rB  r  zonda.parse_transfer  s    : !!(H5ooh;!!+t4__XtR0D)%%k:>
//
E!008

 
	
rD  rz  c                 0    SSS.nU R                  X!U5      $ )Nr  failed)OkFailr%  )r@  rz  statusess      rB  r  zonda.parse_transfer_status  s$    
 &99rD  rs  rt  c                   #    U R                  XE5      u  pEU R                  U5        U R                  5       I Sh  vN   SnU R                  U5      nUS   UUS.nU R	                  U5      (       a)  U R                  U R                  X5      5      I Sh  vN nO/Ub  XHS'   U R                  U R                  X5      5      I Sh  vN nU R                  US5      n	U R                  X5      $  N NY N+7f)a  

https://docs.zondacrypto.exchange/reference/crypto-withdrawal-1

make a withdrawal
:param str code: unified currency code
:param float amount: the amount to withdraw
:param str address: the address to withdraw to
:param str tag:
:param dict [params]: extra parameters specific to the exchange API endpoint
:returns dict: a `transaction structure <https://docs.ccxt.com/#/?id=transaction-structure>`
Nr/  )rU  rb  rs  rt  r{  )
handle_withdraw_tag_and_paramsrv  r|  rU  rp  *v1_01PrivatePostApiPaymentsWithdrawalsFiatr~  ,v1_01PrivatePostApiPaymentsWithdrawalsCryptor  parse_transaction)
r@  rR  rb  rs  rt  rK  rL  rU  r  r{  s
             rB  r   zonda.withdraw   s      99#F7#!!!==& 
 <<!LLT[[Y`MijjH!$!NNt{{[bOkllH ~~h/%%d553 	" k ms4   8C2C,AC2C./C2C0(C2.C20C2r  c                     U R                  S U5      n0 SU R                  US5      _SS _SS _SS _SS _SS _SS _SS _S	S _S
S _SUS   _SS _SS _SS _SS _SS _SS _S S US.E$ )Nr/  txidr  r  ru  addressFromrs  	addressTorb  r^  rU  rR  rz  updatedtagFromrt  tagTocomment)internalr  r   )r  rp  )r@  r  rU  s      rB  r  zonda.parse_transaction*  s
    %%dH5
$"";5
D
 
 	

 t
 4
 t
 
 d
 D
 (
 d
 t
 t
 4
  T!
" t#
$ )
 	
rD  r   GETc           	      P   U R                  U R                  S   U   5      nUS:X  aZ  U R                  X@R                  U5      5      nUSU R	                  X5      -   S-   -  nU(       a  USU R                  U5      -   -  nGO!US:X  aW  U R                  X@R                  U5      5      nUSU R	                  X5      -   -  nU(       a  USU R                  U5      -   -  nGOUS:X  Ga$  U R                  5         U R                  X@R                  U5      5      nUSU R	                  X5      -   -  n[        U R                  5       5      n	S n
US:w  a.  U(       a  USU R                  U5      -   -  nU R                  U	-   n
O&Uc#  U R                  U5      nU R                  U	-   U-   n
U	U R                  5       U R                  U R                  U R                  U
5      U R                  U R                  5      [        R                   5      S	S
.nOU R                  5         U R                  U R#                  UU R%                  5       S.U5      5      nSU R                  U R                  U R                  U5      U R                  U R                  5      [        R                   5      S.nXsXeS.$ )Nr   r   rW  z.json?r   r   POSTzapplication/json)zRequest-TimestampzOperation-IdAPI-KeyAPI-HashContent-Type)r  momentz!application/x-www-form-urlencoded)r  r  r  )urlr  bodyheaders)implode_hostnamer6  r_  extract_paramsimplode_params	urlencodecheck_required_credentialsstrr5  apiKeyr  uuidhmacencodesecrethashlibsha512r~  r  )r@  pathr   r  rK  r  r  r  r  r  payloads              rB  sign
zonda.signJ  s]   ##DIIe$4S$9:(?IIf&9&9$&?@E3,,T::WDDCsT^^E222M!IIf&9&9$&?@E3,,T:::CsT^^E222N"++-IIf&9&9$&?@E3,,T:::C))+,EG3!666C++-yy'++-4%* $		;; IIdkk'&:DKK<TV]VdVde 2G ++->>$++**,/ # D
 !D;; IIdkk$&7T[[9QSZSaSabG
 dOOrD  httpCodereasonr  r  r  r  c
                    Uc  g SU;   aK  U R                  US5      n
U R                  S-   U-   nU R                  U R                  X5        [	        U5      eSU;   a  U R                  US5      nUS:X  ak  U R                  US5      nU R                  S-   U-   n[        S[        U5      5       H#  nX   nU R                  U R                  X5        M%     [	        U5      eg )NrR   rz  r  errorsr   )rp  r/  throw_exactly_matched_exceptionr:  r   rG  r  r  )r@  r  r  r  r  r  r  rL  requestHeadersrequestBodyrR  feedbackrz  r  r  errors                   rB  handle_errorszonda.handle_errorsw  s    X4 ##Hf5Dww}t+H00$Q))! %%h9F8<77S=4/q#f+.A"IE88%Z / $H--rD   )N)@__name__
__module____qualname____firstlineno__r   r>  r   r   rN  rv  r   r	   r   r  dictr  r  r   r  r  r  r   r  r   r  r  r   r   r  r
   r  r   r  r  rH  r-  r<  r   rO  rS  r   r   r[  r   ri  rm  boolrp  r   rx  r}  r  r   r   r  r  r   r   r  r  intr  __static_attributes____classcell__)rA  s   @rB  r)   r)      s   ~# ~@ *, +V +B@
F @
D 59tZ^gi Pc P PTW Pnrsxny P&6 6v 6 6p 37TX\eg ,5C ,5s ,5RU ,5\) ) *, , , @DB ,
S ,
 ,
S\ ,
\@4 @ @6 @D 68 C0 C0J 6:" F27 F2 F2P .2SW`b <s <# <S <gklwgx <8jt jx j; jX	3&
 
4 
0 ?CQUdhqs .I .I .I3 .I^a .Ix|  ~B  yC .I`H Hv H HT <@d[] > >S > >bfglbm >4 mqy{ { {I {Y {X] {fi {z 9=R *S *# *>? ? ?
h 
R` 
* =?  ;  ;>  ;D >B" 97 9QUVdQe 98 ac 73 7 7C 7TW 7gt 7r-
t -
x -
= -
^:C :C : QU]_ (63 (6 (6 (6# (6do (6T
T 
X 
Q\ 
@ &eBSW +PZ-c -3 -S -# -X\ -dg - -rD  r)   ). ccxt.async_support.base.exchanger   ccxt.abstract.zondar   r  ccxt.base.typesr   r   r   r   r	   r
   r   r   r   r   r   r   r   r   r   r   r   r   r   typingr   ccxt.base.errorsr   r   r   r   r   r   r   r    r!   r"   r#   r$   r%   ccxt.base.decimal_to_precisionr&   ccxt.base.preciser'   r)   r  rD  rB  <module>r     st    6 +  M  M  M  M  M  M  * 0 - - ' & . ) * 5 . * ) 4 %HHk HrD  