opinion-clob-sdk 0.1.9__tar.gz → 0.1.11__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of opinion-clob-sdk might be problematic. Click here for more details.
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/PKG-INFO +1 -1
- {opinion_clob_sdk-0.1.9/opinion_clob_sdk → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/__init__.py +1 -1
- {opinion_clob_sdk-0.1.9/opinion_clob_sdk/opinion_clob_sdk → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/chain/py_order_utils/utils.py +38 -28
- {opinion_clob_sdk-0.1.9/opinion_clob_sdk → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/__init__.py +1 -1
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11/opinion_clob_sdk}/opinion_clob_sdk/chain/py_order_utils/utils.py +38 -28
- {opinion_clob_sdk-0.1.9/opinion_clob_sdk → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/__init__.py +1 -1
- {opinion_clob_sdk-0.1.9/opinion_clob_sdk → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/utils.py +38 -28
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk}/opinion_clob_sdk/__init__.py +1 -1
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk}/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/utils.py +38 -28
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/__init__.py +26 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/utils.py +125 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/__init__.py +26 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/utils.py +125 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/__init__.py +26 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/utils.py +125 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/__init__.py +26 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/utils.py +125 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/__init__.py +26 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/__init__.py +0 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/contract_caller.py +390 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/contracts/__init__.py +0 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/contracts/conditional_tokens.py +707 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/contracts/erc20.py +111 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/exception.py +11 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/__init__.py +0 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/builders/__init__.py +0 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/builders/base_builder.py +41 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/builders/exception.py +2 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/builders/order_builder.py +90 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/builders/order_builder_test.py +40 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/constants.py +2 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/model/__init__.py +0 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/model/order.py +254 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/model/order_type.py +9 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/model/sides.py +8 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/model/signatures.py +8 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/signer.py +20 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/utils.py +125 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/__init__.py +0 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/constants.py +19 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/eip712/__init__.py +176 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/enums.py +6 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/exceptions.py +94 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/multisend.py +347 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe.py +141 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe_contracts/__init__.py +0 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe_contracts/compatibility_fallback_handler_v1_3_0.py +327 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe_contracts/multisend_v1_3_0.py +22 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe_contracts/safe_v1_3_0.py +1035 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe_contracts/utils.py +26 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe_signature.py +364 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe_test.py +37 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe_tx.py +437 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/signatures.py +63 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/typing.py +17 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/utils.py +218 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/config.py +4 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/model.py +19 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/__init__.py +26 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/__init__.py +0 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/contract_caller.py +390 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/contracts/__init__.py +0 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/contracts/conditional_tokens.py +707 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/contracts/erc20.py +111 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/exception.py +11 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/__init__.py +0 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/builders/__init__.py +0 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/builders/base_builder.py +41 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/builders/exception.py +2 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/builders/order_builder.py +90 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/builders/order_builder_test.py +40 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/constants.py +2 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/model/__init__.py +0 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/model/order.py +254 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/model/order_type.py +9 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/model/sides.py +8 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/model/signatures.py +8 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/signer.py +20 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/utils.py +125 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/__init__.py +0 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/constants.py +19 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/eip712/__init__.py +176 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/enums.py +6 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/exceptions.py +94 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/multisend.py +347 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe.py +141 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe_contracts/__init__.py +0 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe_contracts/compatibility_fallback_handler_v1_3_0.py +327 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe_contracts/multisend_v1_3_0.py +22 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe_contracts/safe_v1_3_0.py +1035 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe_contracts/utils.py +26 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe_signature.py +364 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe_test.py +37 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe_tx.py +437 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/signatures.py +63 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/typing.py +17 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/utils.py +218 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/config.py +4 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/model.py +19 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/sdk.py +957 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk/verify_api_calls.py +135 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/sdk.py +957 -0
- opinion_clob_sdk-0.1.11/opinion_clob_sdk/verify_api_calls.py +135 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/setup.py +1 -1
- opinion_clob_sdk-0.1.9/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/__init__.py +0 -26
- opinion_clob_sdk-0.1.9/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/utils.py +0 -115
- opinion_clob_sdk-0.1.9/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/__init__.py +0 -26
- opinion_clob_sdk-0.1.9/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/utils.py +0 -115
- opinion_clob_sdk-0.1.9/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/__init__.py +0 -26
- opinion_clob_sdk-0.1.9/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/utils.py +0 -115
- opinion_clob_sdk-0.1.9/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/__init__.py +0 -26
- opinion_clob_sdk-0.1.9/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/utils.py +0 -115
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/MANIFEST.in +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/README.md +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/chain/__init__.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/chain/contract_caller.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/chain/contracts/__init__.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/chain/contracts/conditional_tokens.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/chain/contracts/erc20.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/chain/exception.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/chain/py_order_utils/__init__.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/chain/py_order_utils/builders/__init__.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/chain/py_order_utils/builders/base_builder.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/chain/py_order_utils/builders/exception.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/chain/py_order_utils/builders/order_builder.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/chain/py_order_utils/builders/order_builder_test.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/chain/py_order_utils/constants.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/chain/py_order_utils/model/__init__.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/chain/py_order_utils/model/order.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/chain/py_order_utils/model/order_type.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/chain/py_order_utils/model/sides.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/chain/py_order_utils/model/signatures.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/chain/py_order_utils/signer.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/chain/safe/__init__.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/chain/safe/constants.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/chain/safe/eip712/__init__.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/chain/safe/enums.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/chain/safe/exceptions.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/chain/safe/multisend.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/chain/safe/safe.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/chain/safe/safe_contracts/__init__.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/chain/safe/safe_contracts/compatibility_fallback_handler_v1_3_0.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/chain/safe/safe_contracts/multisend_v1_3_0.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/chain/safe/safe_contracts/safe_v1_3_0.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/chain/safe/safe_contracts/utils.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/chain/safe/safe_signature.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/chain/safe/safe_test.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/chain/safe/safe_tx.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/chain/safe/signatures.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/chain/safe/typing.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/chain/safe/utils.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/config.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/model.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/chain/__init__.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/chain/contract_caller.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/chain/contracts/__init__.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/chain/contracts/conditional_tokens.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/chain/contracts/erc20.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/chain/exception.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/__init__.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/builders/__init__.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/builders/base_builder.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/builders/exception.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/builders/order_builder.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/builders/order_builder_test.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/constants.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/model/__init__.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/model/order.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/model/order_type.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/model/sides.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/model/signatures.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/signer.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/chain/safe/__init__.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/chain/safe/constants.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/chain/safe/eip712/__init__.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/chain/safe/enums.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/chain/safe/exceptions.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/chain/safe/multisend.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe_contracts/__init__.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe_contracts/compatibility_fallback_handler_v1_3_0.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe_contracts/multisend_v1_3_0.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe_contracts/safe_v1_3_0.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe_contracts/utils.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe_signature.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe_test.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe_tx.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/chain/safe/signatures.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/chain/safe/typing.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/chain/safe/utils.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/config.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/model.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/__init__.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/contract_caller.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/contracts/__init__.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/contracts/conditional_tokens.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/contracts/erc20.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/exception.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/__init__.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/builders/__init__.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/builders/base_builder.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/builders/exception.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/builders/order_builder.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/builders/order_builder_test.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/constants.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/model/__init__.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/model/order.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/model/order_type.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/model/sides.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/model/signatures.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/signer.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/__init__.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/constants.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/eip712/__init__.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/enums.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/exceptions.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/multisend.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe_contracts/__init__.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe_contracts/compatibility_fallback_handler_v1_3_0.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe_contracts/multisend_v1_3_0.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe_contracts/safe_v1_3_0.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe_contracts/utils.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe_signature.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe_test.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe_tx.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/signatures.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/typing.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/utils.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/config.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/model.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/__init__.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/contract_caller.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/contracts/__init__.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/contracts/conditional_tokens.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/contracts/erc20.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/exception.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/__init__.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/builders/__init__.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/builders/base_builder.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/builders/exception.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/builders/order_builder.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/builders/order_builder_test.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/constants.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/model/__init__.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/model/order.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/model/order_type.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/model/sides.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/model/signatures.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/signer.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/__init__.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/constants.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/eip712/__init__.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/enums.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/exceptions.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/multisend.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe_contracts/__init__.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe_contracts/compatibility_fallback_handler_v1_3_0.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe_contracts/multisend_v1_3_0.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe_contracts/safe_v1_3_0.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe_contracts/utils.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe_signature.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe_test.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe_tx.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/signatures.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/typing.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/utils.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/config.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/model.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/__init__.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/contract_caller.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/contracts/__init__.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/contracts/conditional_tokens.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/contracts/erc20.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/exception.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/__init__.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/builders/__init__.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/builders/base_builder.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/builders/exception.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/builders/order_builder.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/builders/order_builder_test.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/constants.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/model/__init__.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/model/order.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/model/order_type.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/model/sides.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/model/signatures.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/signer.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/__init__.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/constants.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/eip712/__init__.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/enums.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/exceptions.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/multisend.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe_contracts/__init__.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe_contracts/compatibility_fallback_handler_v1_3_0.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe_contracts/multisend_v1_3_0.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe_contracts/safe_v1_3_0.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe_contracts/utils.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe_signature.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe_test.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe_tx.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/signatures.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/typing.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/utils.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/config.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/model.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/__init__.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/contract_caller.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/contracts/__init__.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/contracts/conditional_tokens.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/contracts/erc20.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/exception.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/__init__.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/builders/__init__.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/builders/base_builder.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/builders/exception.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/builders/order_builder.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/builders/order_builder_test.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/constants.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/model/__init__.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/model/order.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/model/order_type.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/model/sides.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/model/signatures.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/signer.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/__init__.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/constants.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/eip712/__init__.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/enums.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/exceptions.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/multisend.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe_contracts/__init__.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe_contracts/compatibility_fallback_handler_v1_3_0.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe_contracts/multisend_v1_3_0.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe_contracts/safe_v1_3_0.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe_contracts/utils.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe_signature.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe_test.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe_tx.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/signatures.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/typing.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/utils.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/config.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/model.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/__init__.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/contract_caller.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/contracts/__init__.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/contracts/conditional_tokens.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/contracts/erc20.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/exception.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/__init__.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/builders/__init__.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/builders/base_builder.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/builders/exception.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/builders/order_builder.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/builders/order_builder_test.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/constants.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/model/__init__.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/model/order.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/model/order_type.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/model/sides.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/model/signatures.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/signer.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/__init__.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/constants.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/eip712/__init__.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/enums.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/exceptions.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/multisend.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe_contracts/__init__.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe_contracts/compatibility_fallback_handler_v1_3_0.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe_contracts/multisend_v1_3_0.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe_contracts/safe_v1_3_0.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe_contracts/utils.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe_signature.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe_test.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe_tx.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/signatures.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/typing.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/utils.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/config.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/model.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/__init__.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/contract_caller.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/contracts/__init__.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/contracts/conditional_tokens.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/contracts/erc20.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/exception.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/__init__.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/builders/__init__.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/builders/base_builder.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/builders/exception.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/builders/order_builder.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/builders/order_builder_test.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/constants.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/model/__init__.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/model/order.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/model/order_type.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/model/sides.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/model/signatures.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/py_order_utils/signer.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/__init__.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/constants.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/eip712/__init__.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/enums.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/exceptions.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/multisend.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe_contracts/__init__.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe_contracts/compatibility_fallback_handler_v1_3_0.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe_contracts/multisend_v1_3_0.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe_contracts/safe_v1_3_0.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe_contracts/utils.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe_signature.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe_test.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/safe_tx.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/signatures.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/typing.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/chain/safe/utils.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/config.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/model.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/sdk.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/sdk.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/sdk.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/sdk.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/verify_api_calls.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/sdk.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/verify_api_calls.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/sdk.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk}/opinion_clob_sdk/opinion_clob_sdk/opinion_clob_sdk/verify_api_calls.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk}/opinion_clob_sdk/opinion_clob_sdk/sdk.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk}/opinion_clob_sdk/opinion_clob_sdk/verify_api_calls.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk}/opinion_clob_sdk/sdk.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11/opinion_clob_sdk/opinion_clob_sdk}/opinion_clob_sdk/verify_api_calls.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/setup.cfg +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/tests/test_integration.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/tests/test_model.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/tests/test_order_calculations.py +0 -0
- {opinion_clob_sdk-0.1.9 → opinion_clob_sdk-0.1.11}/tests/test_sdk.py +0 -0
|
@@ -42,19 +42,22 @@ def prepend_zx(in_str: str) -> str:
|
|
|
42
42
|
def calculate_order_amounts(price: float, maker_amount: int, side: OrderSide, decimals: int) -> tuple[int, int]:
|
|
43
43
|
"""
|
|
44
44
|
Calculate the maker and taker amounts based on the price and side.
|
|
45
|
-
|
|
45
|
+
|
|
46
|
+
Uses precise Decimal arithmetic to ensure precision within 6 significant digits
|
|
47
|
+
(matching the matching engine's precision limit).
|
|
48
|
+
|
|
46
49
|
Args:
|
|
47
50
|
price: The price of the order (between 0.001 and 0.999)
|
|
48
51
|
maker_amount: The maker amount in base units
|
|
49
52
|
side: The order side (BUY or SELL)
|
|
50
|
-
decimals: The number of decimal places for the currency
|
|
51
|
-
|
|
53
|
+
decimals: The number of decimal places for the currency (unused, kept for compatibility)
|
|
54
|
+
|
|
52
55
|
Returns:
|
|
53
56
|
tuple[int, int]: A tuple containing (recalculated_maker_amount, taker_amount)
|
|
54
|
-
For BUY: price = taker/
|
|
55
|
-
For SELL: price = taker/maker
|
|
57
|
+
For BUY: price = maker/taker, so taker = maker/price
|
|
58
|
+
For SELL: price = taker/maker, so taker = maker*price
|
|
56
59
|
"""
|
|
57
|
-
|
|
60
|
+
|
|
58
61
|
# Validate price using Decimal for exact comparison
|
|
59
62
|
try:
|
|
60
63
|
price_decimal = Decimal(str(price))
|
|
@@ -68,48 +71,55 @@ def calculate_order_amounts(price: float, maker_amount: int, side: OrderSide, de
|
|
|
68
71
|
if not (min_price <= price_decimal <= max_price):
|
|
69
72
|
raise ValueError(f"Price must be between {min_price} and {max_price} (inclusive), got {price}")
|
|
70
73
|
|
|
71
|
-
# Ensure price doesn't have excessive precision (max
|
|
72
|
-
if price_decimal.as_tuple().exponent < -
|
|
73
|
-
raise ValueError(f"Price precision cannot exceed
|
|
74
|
+
# Ensure price doesn't have excessive precision (max 6 decimal places to match engine precision)
|
|
75
|
+
if price_decimal.as_tuple().exponent < -6:
|
|
76
|
+
raise ValueError(f"Price precision cannot exceed 6 decimal places, got {price}")
|
|
74
77
|
|
|
75
78
|
maker_decimal = Decimal(str(maker_amount))
|
|
76
|
-
decimals_decimal = Decimal(str(decimals))
|
|
77
79
|
|
|
78
80
|
if side == OrderSide.BUY:
|
|
79
81
|
# For BUY: price = maker/taker
|
|
80
|
-
# Calculate taker
|
|
81
|
-
#
|
|
82
|
-
#
|
|
82
|
+
# Goal: Calculate taker = floor(maker / price)
|
|
83
|
+
# Then recalculated_maker = floor(taker * price)
|
|
84
|
+
#
|
|
85
|
+
# Note: Due to integer arithmetic, recalculated_maker may be slightly less than
|
|
86
|
+
# the original maker_amount. This is expected and unavoidable with fixed precision.
|
|
87
|
+
#
|
|
88
|
+
# This ensures: given (recalculated_maker, taker, price),
|
|
89
|
+
# you can always verify: recalculated_maker = floor(taker * price)
|
|
90
|
+
|
|
91
|
+
# Calculate taker amount: taker = floor(maker / price)
|
|
83
92
|
exact_taker = maker_decimal / price_decimal
|
|
84
|
-
taker_amount = int(
|
|
93
|
+
taker_amount = int(exact_taker)
|
|
85
94
|
|
|
86
|
-
# Recalculate maker
|
|
87
|
-
|
|
88
|
-
recalculated_maker_amount = int(
|
|
95
|
+
# Recalculate maker = floor(taker * price) using exact Decimal arithmetic
|
|
96
|
+
recalculated_maker_decimal = Decimal(str(taker_amount)) * price_decimal
|
|
97
|
+
recalculated_maker_amount = int(recalculated_maker_decimal)
|
|
89
98
|
|
|
90
|
-
# If recalculated maker exceeds original, reduce taker by 1 and recalculate
|
|
91
|
-
while recalculated_maker_amount > maker_amount and taker_amount > 0:
|
|
92
|
-
taker_amount -= 1
|
|
93
|
-
exact_maker = Decimal(str(taker_amount)) * price_decimal
|
|
94
|
-
recalculated_maker_amount = int(math.floor(exact_maker))
|
|
95
99
|
else: # SELL
|
|
96
100
|
# For SELL: price = taker/maker
|
|
97
|
-
#
|
|
101
|
+
# We want: taker = floor(maker * price)
|
|
102
|
+
# Maker stays the same
|
|
103
|
+
|
|
104
|
+
# Calculate exact taker = maker * price
|
|
98
105
|
exact_taker = maker_decimal * price_decimal
|
|
99
|
-
|
|
106
|
+
|
|
107
|
+
# Round down to get integer taker
|
|
108
|
+
taker_amount = int(exact_taker)
|
|
100
109
|
|
|
101
110
|
# For SELL, maker amount doesn't change
|
|
102
111
|
recalculated_maker_amount = int(maker_amount)
|
|
103
|
-
|
|
112
|
+
|
|
104
113
|
# Ensure amounts are at least 1
|
|
105
114
|
taker_amount = int(max(1, taker_amount))
|
|
106
115
|
recalculated_maker_amount = int(max(1, recalculated_maker_amount))
|
|
107
116
|
|
|
108
117
|
logging.debug(f"Order calculation: taker_amount={taker_amount}, recalculated_maker_amount={recalculated_maker_amount}")
|
|
109
118
|
|
|
110
|
-
|
|
111
|
-
|
|
119
|
+
# Validate the calculated price is within bounds
|
|
120
|
+
calculated_price = recalculated_maker_amount / taker_amount if side == OrderSide.BUY else taker_amount / recalculated_maker_amount
|
|
121
|
+
|
|
112
122
|
if calculated_price > 0.999 or calculated_price < 0.001:
|
|
113
123
|
raise ValueError("invalid taker_amount and recalculated_maker_amount")
|
|
114
|
-
|
|
124
|
+
|
|
115
125
|
return recalculated_maker_amount, taker_amount
|
|
@@ -42,19 +42,22 @@ def prepend_zx(in_str: str) -> str:
|
|
|
42
42
|
def calculate_order_amounts(price: float, maker_amount: int, side: OrderSide, decimals: int) -> tuple[int, int]:
|
|
43
43
|
"""
|
|
44
44
|
Calculate the maker and taker amounts based on the price and side.
|
|
45
|
-
|
|
45
|
+
|
|
46
|
+
Uses precise Decimal arithmetic to ensure precision within 6 significant digits
|
|
47
|
+
(matching the matching engine's precision limit).
|
|
48
|
+
|
|
46
49
|
Args:
|
|
47
50
|
price: The price of the order (between 0.001 and 0.999)
|
|
48
51
|
maker_amount: The maker amount in base units
|
|
49
52
|
side: The order side (BUY or SELL)
|
|
50
|
-
decimals: The number of decimal places for the currency
|
|
51
|
-
|
|
53
|
+
decimals: The number of decimal places for the currency (unused, kept for compatibility)
|
|
54
|
+
|
|
52
55
|
Returns:
|
|
53
56
|
tuple[int, int]: A tuple containing (recalculated_maker_amount, taker_amount)
|
|
54
|
-
For BUY: price = taker/
|
|
55
|
-
For SELL: price = taker/maker
|
|
57
|
+
For BUY: price = maker/taker, so taker = maker/price
|
|
58
|
+
For SELL: price = taker/maker, so taker = maker*price
|
|
56
59
|
"""
|
|
57
|
-
|
|
60
|
+
|
|
58
61
|
# Validate price using Decimal for exact comparison
|
|
59
62
|
try:
|
|
60
63
|
price_decimal = Decimal(str(price))
|
|
@@ -68,48 +71,55 @@ def calculate_order_amounts(price: float, maker_amount: int, side: OrderSide, de
|
|
|
68
71
|
if not (min_price <= price_decimal <= max_price):
|
|
69
72
|
raise ValueError(f"Price must be between {min_price} and {max_price} (inclusive), got {price}")
|
|
70
73
|
|
|
71
|
-
# Ensure price doesn't have excessive precision (max
|
|
72
|
-
if price_decimal.as_tuple().exponent < -
|
|
73
|
-
raise ValueError(f"Price precision cannot exceed
|
|
74
|
+
# Ensure price doesn't have excessive precision (max 6 decimal places to match engine precision)
|
|
75
|
+
if price_decimal.as_tuple().exponent < -6:
|
|
76
|
+
raise ValueError(f"Price precision cannot exceed 6 decimal places, got {price}")
|
|
74
77
|
|
|
75
78
|
maker_decimal = Decimal(str(maker_amount))
|
|
76
|
-
decimals_decimal = Decimal(str(decimals))
|
|
77
79
|
|
|
78
80
|
if side == OrderSide.BUY:
|
|
79
81
|
# For BUY: price = maker/taker
|
|
80
|
-
# Calculate taker
|
|
81
|
-
#
|
|
82
|
-
#
|
|
82
|
+
# Goal: Calculate taker = floor(maker / price)
|
|
83
|
+
# Then recalculated_maker = floor(taker * price)
|
|
84
|
+
#
|
|
85
|
+
# Note: Due to integer arithmetic, recalculated_maker may be slightly less than
|
|
86
|
+
# the original maker_amount. This is expected and unavoidable with fixed precision.
|
|
87
|
+
#
|
|
88
|
+
# This ensures: given (recalculated_maker, taker, price),
|
|
89
|
+
# you can always verify: recalculated_maker = floor(taker * price)
|
|
90
|
+
|
|
91
|
+
# Calculate taker amount: taker = floor(maker / price)
|
|
83
92
|
exact_taker = maker_decimal / price_decimal
|
|
84
|
-
taker_amount = int(
|
|
93
|
+
taker_amount = int(exact_taker)
|
|
85
94
|
|
|
86
|
-
# Recalculate maker
|
|
87
|
-
|
|
88
|
-
recalculated_maker_amount = int(
|
|
95
|
+
# Recalculate maker = floor(taker * price) using exact Decimal arithmetic
|
|
96
|
+
recalculated_maker_decimal = Decimal(str(taker_amount)) * price_decimal
|
|
97
|
+
recalculated_maker_amount = int(recalculated_maker_decimal)
|
|
89
98
|
|
|
90
|
-
# If recalculated maker exceeds original, reduce taker by 1 and recalculate
|
|
91
|
-
while recalculated_maker_amount > maker_amount and taker_amount > 0:
|
|
92
|
-
taker_amount -= 1
|
|
93
|
-
exact_maker = Decimal(str(taker_amount)) * price_decimal
|
|
94
|
-
recalculated_maker_amount = int(math.floor(exact_maker))
|
|
95
99
|
else: # SELL
|
|
96
100
|
# For SELL: price = taker/maker
|
|
97
|
-
#
|
|
101
|
+
# We want: taker = floor(maker * price)
|
|
102
|
+
# Maker stays the same
|
|
103
|
+
|
|
104
|
+
# Calculate exact taker = maker * price
|
|
98
105
|
exact_taker = maker_decimal * price_decimal
|
|
99
|
-
|
|
106
|
+
|
|
107
|
+
# Round down to get integer taker
|
|
108
|
+
taker_amount = int(exact_taker)
|
|
100
109
|
|
|
101
110
|
# For SELL, maker amount doesn't change
|
|
102
111
|
recalculated_maker_amount = int(maker_amount)
|
|
103
|
-
|
|
112
|
+
|
|
104
113
|
# Ensure amounts are at least 1
|
|
105
114
|
taker_amount = int(max(1, taker_amount))
|
|
106
115
|
recalculated_maker_amount = int(max(1, recalculated_maker_amount))
|
|
107
116
|
|
|
108
117
|
logging.debug(f"Order calculation: taker_amount={taker_amount}, recalculated_maker_amount={recalculated_maker_amount}")
|
|
109
118
|
|
|
110
|
-
|
|
111
|
-
|
|
119
|
+
# Validate the calculated price is within bounds
|
|
120
|
+
calculated_price = recalculated_maker_amount / taker_amount if side == OrderSide.BUY else taker_amount / recalculated_maker_amount
|
|
121
|
+
|
|
112
122
|
if calculated_price > 0.999 or calculated_price < 0.001:
|
|
113
123
|
raise ValueError("invalid taker_amount and recalculated_maker_amount")
|
|
114
|
-
|
|
124
|
+
|
|
115
125
|
return recalculated_maker_amount, taker_amount
|
|
@@ -42,19 +42,22 @@ def prepend_zx(in_str: str) -> str:
|
|
|
42
42
|
def calculate_order_amounts(price: float, maker_amount: int, side: OrderSide, decimals: int) -> tuple[int, int]:
|
|
43
43
|
"""
|
|
44
44
|
Calculate the maker and taker amounts based on the price and side.
|
|
45
|
-
|
|
45
|
+
|
|
46
|
+
Uses precise Decimal arithmetic to ensure precision within 6 significant digits
|
|
47
|
+
(matching the matching engine's precision limit).
|
|
48
|
+
|
|
46
49
|
Args:
|
|
47
50
|
price: The price of the order (between 0.001 and 0.999)
|
|
48
51
|
maker_amount: The maker amount in base units
|
|
49
52
|
side: The order side (BUY or SELL)
|
|
50
|
-
decimals: The number of decimal places for the currency
|
|
51
|
-
|
|
53
|
+
decimals: The number of decimal places for the currency (unused, kept for compatibility)
|
|
54
|
+
|
|
52
55
|
Returns:
|
|
53
56
|
tuple[int, int]: A tuple containing (recalculated_maker_amount, taker_amount)
|
|
54
|
-
For BUY: price = taker/
|
|
55
|
-
For SELL: price = taker/maker
|
|
57
|
+
For BUY: price = maker/taker, so taker = maker/price
|
|
58
|
+
For SELL: price = taker/maker, so taker = maker*price
|
|
56
59
|
"""
|
|
57
|
-
|
|
60
|
+
|
|
58
61
|
# Validate price using Decimal for exact comparison
|
|
59
62
|
try:
|
|
60
63
|
price_decimal = Decimal(str(price))
|
|
@@ -68,48 +71,55 @@ def calculate_order_amounts(price: float, maker_amount: int, side: OrderSide, de
|
|
|
68
71
|
if not (min_price <= price_decimal <= max_price):
|
|
69
72
|
raise ValueError(f"Price must be between {min_price} and {max_price} (inclusive), got {price}")
|
|
70
73
|
|
|
71
|
-
# Ensure price doesn't have excessive precision (max
|
|
72
|
-
if price_decimal.as_tuple().exponent < -
|
|
73
|
-
raise ValueError(f"Price precision cannot exceed
|
|
74
|
+
# Ensure price doesn't have excessive precision (max 6 decimal places to match engine precision)
|
|
75
|
+
if price_decimal.as_tuple().exponent < -6:
|
|
76
|
+
raise ValueError(f"Price precision cannot exceed 6 decimal places, got {price}")
|
|
74
77
|
|
|
75
78
|
maker_decimal = Decimal(str(maker_amount))
|
|
76
|
-
decimals_decimal = Decimal(str(decimals))
|
|
77
79
|
|
|
78
80
|
if side == OrderSide.BUY:
|
|
79
81
|
# For BUY: price = maker/taker
|
|
80
|
-
# Calculate taker
|
|
81
|
-
#
|
|
82
|
-
#
|
|
82
|
+
# Goal: Calculate taker = floor(maker / price)
|
|
83
|
+
# Then recalculated_maker = floor(taker * price)
|
|
84
|
+
#
|
|
85
|
+
# Note: Due to integer arithmetic, recalculated_maker may be slightly less than
|
|
86
|
+
# the original maker_amount. This is expected and unavoidable with fixed precision.
|
|
87
|
+
#
|
|
88
|
+
# This ensures: given (recalculated_maker, taker, price),
|
|
89
|
+
# you can always verify: recalculated_maker = floor(taker * price)
|
|
90
|
+
|
|
91
|
+
# Calculate taker amount: taker = floor(maker / price)
|
|
83
92
|
exact_taker = maker_decimal / price_decimal
|
|
84
|
-
taker_amount = int(
|
|
93
|
+
taker_amount = int(exact_taker)
|
|
85
94
|
|
|
86
|
-
# Recalculate maker
|
|
87
|
-
|
|
88
|
-
recalculated_maker_amount = int(
|
|
95
|
+
# Recalculate maker = floor(taker * price) using exact Decimal arithmetic
|
|
96
|
+
recalculated_maker_decimal = Decimal(str(taker_amount)) * price_decimal
|
|
97
|
+
recalculated_maker_amount = int(recalculated_maker_decimal)
|
|
89
98
|
|
|
90
|
-
# If recalculated maker exceeds original, reduce taker by 1 and recalculate
|
|
91
|
-
while recalculated_maker_amount > maker_amount and taker_amount > 0:
|
|
92
|
-
taker_amount -= 1
|
|
93
|
-
exact_maker = Decimal(str(taker_amount)) * price_decimal
|
|
94
|
-
recalculated_maker_amount = int(math.floor(exact_maker))
|
|
95
99
|
else: # SELL
|
|
96
100
|
# For SELL: price = taker/maker
|
|
97
|
-
#
|
|
101
|
+
# We want: taker = floor(maker * price)
|
|
102
|
+
# Maker stays the same
|
|
103
|
+
|
|
104
|
+
# Calculate exact taker = maker * price
|
|
98
105
|
exact_taker = maker_decimal * price_decimal
|
|
99
|
-
|
|
106
|
+
|
|
107
|
+
# Round down to get integer taker
|
|
108
|
+
taker_amount = int(exact_taker)
|
|
100
109
|
|
|
101
110
|
# For SELL, maker amount doesn't change
|
|
102
111
|
recalculated_maker_amount = int(maker_amount)
|
|
103
|
-
|
|
112
|
+
|
|
104
113
|
# Ensure amounts are at least 1
|
|
105
114
|
taker_amount = int(max(1, taker_amount))
|
|
106
115
|
recalculated_maker_amount = int(max(1, recalculated_maker_amount))
|
|
107
116
|
|
|
108
117
|
logging.debug(f"Order calculation: taker_amount={taker_amount}, recalculated_maker_amount={recalculated_maker_amount}")
|
|
109
118
|
|
|
110
|
-
|
|
111
|
-
|
|
119
|
+
# Validate the calculated price is within bounds
|
|
120
|
+
calculated_price = recalculated_maker_amount / taker_amount if side == OrderSide.BUY else taker_amount / recalculated_maker_amount
|
|
121
|
+
|
|
112
122
|
if calculated_price > 0.999 or calculated_price < 0.001:
|
|
113
123
|
raise ValueError("invalid taker_amount and recalculated_maker_amount")
|
|
114
|
-
|
|
124
|
+
|
|
115
125
|
return recalculated_maker_amount, taker_amount
|
|
@@ -42,19 +42,22 @@ def prepend_zx(in_str: str) -> str:
|
|
|
42
42
|
def calculate_order_amounts(price: float, maker_amount: int, side: OrderSide, decimals: int) -> tuple[int, int]:
|
|
43
43
|
"""
|
|
44
44
|
Calculate the maker and taker amounts based on the price and side.
|
|
45
|
-
|
|
45
|
+
|
|
46
|
+
Uses precise Decimal arithmetic to ensure precision within 6 significant digits
|
|
47
|
+
(matching the matching engine's precision limit).
|
|
48
|
+
|
|
46
49
|
Args:
|
|
47
50
|
price: The price of the order (between 0.001 and 0.999)
|
|
48
51
|
maker_amount: The maker amount in base units
|
|
49
52
|
side: The order side (BUY or SELL)
|
|
50
|
-
decimals: The number of decimal places for the currency
|
|
51
|
-
|
|
53
|
+
decimals: The number of decimal places for the currency (unused, kept for compatibility)
|
|
54
|
+
|
|
52
55
|
Returns:
|
|
53
56
|
tuple[int, int]: A tuple containing (recalculated_maker_amount, taker_amount)
|
|
54
|
-
For BUY: price = taker/
|
|
55
|
-
For SELL: price = taker/maker
|
|
57
|
+
For BUY: price = maker/taker, so taker = maker/price
|
|
58
|
+
For SELL: price = taker/maker, so taker = maker*price
|
|
56
59
|
"""
|
|
57
|
-
|
|
60
|
+
|
|
58
61
|
# Validate price using Decimal for exact comparison
|
|
59
62
|
try:
|
|
60
63
|
price_decimal = Decimal(str(price))
|
|
@@ -68,48 +71,55 @@ def calculate_order_amounts(price: float, maker_amount: int, side: OrderSide, de
|
|
|
68
71
|
if not (min_price <= price_decimal <= max_price):
|
|
69
72
|
raise ValueError(f"Price must be between {min_price} and {max_price} (inclusive), got {price}")
|
|
70
73
|
|
|
71
|
-
# Ensure price doesn't have excessive precision (max
|
|
72
|
-
if price_decimal.as_tuple().exponent < -
|
|
73
|
-
raise ValueError(f"Price precision cannot exceed
|
|
74
|
+
# Ensure price doesn't have excessive precision (max 6 decimal places to match engine precision)
|
|
75
|
+
if price_decimal.as_tuple().exponent < -6:
|
|
76
|
+
raise ValueError(f"Price precision cannot exceed 6 decimal places, got {price}")
|
|
74
77
|
|
|
75
78
|
maker_decimal = Decimal(str(maker_amount))
|
|
76
|
-
decimals_decimal = Decimal(str(decimals))
|
|
77
79
|
|
|
78
80
|
if side == OrderSide.BUY:
|
|
79
81
|
# For BUY: price = maker/taker
|
|
80
|
-
# Calculate taker
|
|
81
|
-
#
|
|
82
|
-
#
|
|
82
|
+
# Goal: Calculate taker = floor(maker / price)
|
|
83
|
+
# Then recalculated_maker = floor(taker * price)
|
|
84
|
+
#
|
|
85
|
+
# Note: Due to integer arithmetic, recalculated_maker may be slightly less than
|
|
86
|
+
# the original maker_amount. This is expected and unavoidable with fixed precision.
|
|
87
|
+
#
|
|
88
|
+
# This ensures: given (recalculated_maker, taker, price),
|
|
89
|
+
# you can always verify: recalculated_maker = floor(taker * price)
|
|
90
|
+
|
|
91
|
+
# Calculate taker amount: taker = floor(maker / price)
|
|
83
92
|
exact_taker = maker_decimal / price_decimal
|
|
84
|
-
taker_amount = int(
|
|
93
|
+
taker_amount = int(exact_taker)
|
|
85
94
|
|
|
86
|
-
# Recalculate maker
|
|
87
|
-
|
|
88
|
-
recalculated_maker_amount = int(
|
|
95
|
+
# Recalculate maker = floor(taker * price) using exact Decimal arithmetic
|
|
96
|
+
recalculated_maker_decimal = Decimal(str(taker_amount)) * price_decimal
|
|
97
|
+
recalculated_maker_amount = int(recalculated_maker_decimal)
|
|
89
98
|
|
|
90
|
-
# If recalculated maker exceeds original, reduce taker by 1 and recalculate
|
|
91
|
-
while recalculated_maker_amount > maker_amount and taker_amount > 0:
|
|
92
|
-
taker_amount -= 1
|
|
93
|
-
exact_maker = Decimal(str(taker_amount)) * price_decimal
|
|
94
|
-
recalculated_maker_amount = int(math.floor(exact_maker))
|
|
95
99
|
else: # SELL
|
|
96
100
|
# For SELL: price = taker/maker
|
|
97
|
-
#
|
|
101
|
+
# We want: taker = floor(maker * price)
|
|
102
|
+
# Maker stays the same
|
|
103
|
+
|
|
104
|
+
# Calculate exact taker = maker * price
|
|
98
105
|
exact_taker = maker_decimal * price_decimal
|
|
99
|
-
|
|
106
|
+
|
|
107
|
+
# Round down to get integer taker
|
|
108
|
+
taker_amount = int(exact_taker)
|
|
100
109
|
|
|
101
110
|
# For SELL, maker amount doesn't change
|
|
102
111
|
recalculated_maker_amount = int(maker_amount)
|
|
103
|
-
|
|
112
|
+
|
|
104
113
|
# Ensure amounts are at least 1
|
|
105
114
|
taker_amount = int(max(1, taker_amount))
|
|
106
115
|
recalculated_maker_amount = int(max(1, recalculated_maker_amount))
|
|
107
116
|
|
|
108
117
|
logging.debug(f"Order calculation: taker_amount={taker_amount}, recalculated_maker_amount={recalculated_maker_amount}")
|
|
109
118
|
|
|
110
|
-
|
|
111
|
-
|
|
119
|
+
# Validate the calculated price is within bounds
|
|
120
|
+
calculated_price = recalculated_maker_amount / taker_amount if side == OrderSide.BUY else taker_amount / recalculated_maker_amount
|
|
121
|
+
|
|
112
122
|
if calculated_price > 0.999 or calculated_price < 0.001:
|
|
113
123
|
raise ValueError("invalid taker_amount and recalculated_maker_amount")
|
|
114
|
-
|
|
124
|
+
|
|
115
125
|
return recalculated_maker_amount, taker_amount
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
"""Opinion CLOB SDK - Python SDK for Opinion Prediction Market CLOB API"""
|
|
2
|
+
|
|
3
|
+
from opinion_clob_sdk.sdk import (
|
|
4
|
+
Client,
|
|
5
|
+
CHAIN_ID_BASE_MAINNET,
|
|
6
|
+
SUPPORTED_CHAIN_IDS
|
|
7
|
+
)
|
|
8
|
+
from opinion_clob_sdk.model import TopicStatus, TopicType, TopicStatusFilter
|
|
9
|
+
from opinion_clob_sdk.chain.exception import (
|
|
10
|
+
BalanceNotEnough,
|
|
11
|
+
NoPositionsToRedeem,
|
|
12
|
+
InsufficientGasBalance
|
|
13
|
+
)
|
|
14
|
+
|
|
15
|
+
__version__ = "0.1.11"
|
|
16
|
+
__all__ = [
|
|
17
|
+
"Client",
|
|
18
|
+
"TopicStatus",
|
|
19
|
+
"TopicType",
|
|
20
|
+
"TopicStatusFilter",
|
|
21
|
+
"CHAIN_ID_BASE_MAINNET",
|
|
22
|
+
"SUPPORTED_CHAIN_IDS",
|
|
23
|
+
"BalanceNotEnough",
|
|
24
|
+
"NoPositionsToRedeem",
|
|
25
|
+
"InsufficientGasBalance"
|
|
26
|
+
]
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
import math
|
|
2
|
+
import logging
|
|
3
|
+
from eth_utils import to_checksum_address
|
|
4
|
+
from string import punctuation
|
|
5
|
+
from random import random
|
|
6
|
+
from datetime import datetime, timezone
|
|
7
|
+
from .model.sides import OrderSide
|
|
8
|
+
from decimal import Decimal, ROUND_DOWN
|
|
9
|
+
|
|
10
|
+
max_int = math.pow(2, 32)
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
def normalize(s: str) -> str:
|
|
14
|
+
lowered = s.lower()
|
|
15
|
+
for p in punctuation:
|
|
16
|
+
lowered = lowered.replace(p, "")
|
|
17
|
+
return lowered
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
def normalize_address(address: str) -> str:
|
|
21
|
+
return to_checksum_address(address)
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
def generate_seed() -> int:
|
|
25
|
+
"""
|
|
26
|
+
Pseudo random seed
|
|
27
|
+
"""
|
|
28
|
+
now = datetime.now().replace(tzinfo=timezone.utc).timestamp()
|
|
29
|
+
return round(now * random())
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
def prepend_zx(in_str: str) -> str:
|
|
33
|
+
"""
|
|
34
|
+
Prepend 0x to the input string if it is missing
|
|
35
|
+
"""
|
|
36
|
+
s = in_str
|
|
37
|
+
if len(s) > 2 and s[:2] != "0x":
|
|
38
|
+
s = f"0x{s}"
|
|
39
|
+
return s
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
def calculate_order_amounts(price: float, maker_amount: int, side: OrderSide, decimals: int) -> tuple[int, int]:
|
|
43
|
+
"""
|
|
44
|
+
Calculate the maker and taker amounts based on the price and side.
|
|
45
|
+
|
|
46
|
+
Uses precise Decimal arithmetic to ensure precision within 6 significant digits
|
|
47
|
+
(matching the matching engine's precision limit).
|
|
48
|
+
|
|
49
|
+
Args:
|
|
50
|
+
price: The price of the order (between 0.001 and 0.999)
|
|
51
|
+
maker_amount: The maker amount in base units
|
|
52
|
+
side: The order side (BUY or SELL)
|
|
53
|
+
decimals: The number of decimal places for the currency (unused, kept for compatibility)
|
|
54
|
+
|
|
55
|
+
Returns:
|
|
56
|
+
tuple[int, int]: A tuple containing (recalculated_maker_amount, taker_amount)
|
|
57
|
+
For BUY: price = maker/taker, so taker = maker/price
|
|
58
|
+
For SELL: price = taker/maker, so taker = maker*price
|
|
59
|
+
"""
|
|
60
|
+
|
|
61
|
+
# Validate price using Decimal for exact comparison
|
|
62
|
+
try:
|
|
63
|
+
price_decimal = Decimal(str(price))
|
|
64
|
+
except (ValueError, TypeError) as e:
|
|
65
|
+
raise ValueError(f"Invalid price format: {price}") from e
|
|
66
|
+
|
|
67
|
+
# Define min/max price as Decimal for exact comparison
|
|
68
|
+
min_price = Decimal("0.001")
|
|
69
|
+
max_price = Decimal("0.999")
|
|
70
|
+
|
|
71
|
+
if not (min_price <= price_decimal <= max_price):
|
|
72
|
+
raise ValueError(f"Price must be between {min_price} and {max_price} (inclusive), got {price}")
|
|
73
|
+
|
|
74
|
+
# Ensure price doesn't have excessive precision (max 6 decimal places to match engine precision)
|
|
75
|
+
if price_decimal.as_tuple().exponent < -6:
|
|
76
|
+
raise ValueError(f"Price precision cannot exceed 6 decimal places, got {price}")
|
|
77
|
+
|
|
78
|
+
maker_decimal = Decimal(str(maker_amount))
|
|
79
|
+
|
|
80
|
+
if side == OrderSide.BUY:
|
|
81
|
+
# For BUY: price = maker/taker
|
|
82
|
+
# Goal: Calculate taker = floor(maker / price)
|
|
83
|
+
# Then recalculated_maker = floor(taker * price)
|
|
84
|
+
#
|
|
85
|
+
# Note: Due to integer arithmetic, recalculated_maker may be slightly less than
|
|
86
|
+
# the original maker_amount. This is expected and unavoidable with fixed precision.
|
|
87
|
+
#
|
|
88
|
+
# This ensures: given (recalculated_maker, taker, price),
|
|
89
|
+
# you can always verify: recalculated_maker = floor(taker * price)
|
|
90
|
+
|
|
91
|
+
# Calculate taker amount: taker = floor(maker / price)
|
|
92
|
+
exact_taker = maker_decimal / price_decimal
|
|
93
|
+
taker_amount = int(exact_taker)
|
|
94
|
+
|
|
95
|
+
# Recalculate maker = floor(taker * price) using exact Decimal arithmetic
|
|
96
|
+
recalculated_maker_decimal = Decimal(str(taker_amount)) * price_decimal
|
|
97
|
+
recalculated_maker_amount = int(recalculated_maker_decimal)
|
|
98
|
+
|
|
99
|
+
else: # SELL
|
|
100
|
+
# For SELL: price = taker/maker
|
|
101
|
+
# We want: taker = floor(maker * price)
|
|
102
|
+
# Maker stays the same
|
|
103
|
+
|
|
104
|
+
# Calculate exact taker = maker * price
|
|
105
|
+
exact_taker = maker_decimal * price_decimal
|
|
106
|
+
|
|
107
|
+
# Round down to get integer taker
|
|
108
|
+
taker_amount = int(exact_taker)
|
|
109
|
+
|
|
110
|
+
# For SELL, maker amount doesn't change
|
|
111
|
+
recalculated_maker_amount = int(maker_amount)
|
|
112
|
+
|
|
113
|
+
# Ensure amounts are at least 1
|
|
114
|
+
taker_amount = int(max(1, taker_amount))
|
|
115
|
+
recalculated_maker_amount = int(max(1, recalculated_maker_amount))
|
|
116
|
+
|
|
117
|
+
logging.debug(f"Order calculation: taker_amount={taker_amount}, recalculated_maker_amount={recalculated_maker_amount}")
|
|
118
|
+
|
|
119
|
+
# Validate the calculated price is within bounds
|
|
120
|
+
calculated_price = recalculated_maker_amount / taker_amount if side == OrderSide.BUY else taker_amount / recalculated_maker_amount
|
|
121
|
+
|
|
122
|
+
if calculated_price > 0.999 or calculated_price < 0.001:
|
|
123
|
+
raise ValueError("invalid taker_amount and recalculated_maker_amount")
|
|
124
|
+
|
|
125
|
+
return recalculated_maker_amount, taker_amount
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
"""Opinion CLOB SDK - Python SDK for Opinion Prediction Market CLOB API"""
|
|
2
|
+
|
|
3
|
+
from opinion_clob_sdk.sdk import (
|
|
4
|
+
Client,
|
|
5
|
+
CHAIN_ID_BASE_MAINNET,
|
|
6
|
+
SUPPORTED_CHAIN_IDS
|
|
7
|
+
)
|
|
8
|
+
from opinion_clob_sdk.model import TopicStatus, TopicType, TopicStatusFilter
|
|
9
|
+
from opinion_clob_sdk.chain.exception import (
|
|
10
|
+
BalanceNotEnough,
|
|
11
|
+
NoPositionsToRedeem,
|
|
12
|
+
InsufficientGasBalance
|
|
13
|
+
)
|
|
14
|
+
|
|
15
|
+
__version__ = "0.1.11"
|
|
16
|
+
__all__ = [
|
|
17
|
+
"Client",
|
|
18
|
+
"TopicStatus",
|
|
19
|
+
"TopicType",
|
|
20
|
+
"TopicStatusFilter",
|
|
21
|
+
"CHAIN_ID_BASE_MAINNET",
|
|
22
|
+
"SUPPORTED_CHAIN_IDS",
|
|
23
|
+
"BalanceNotEnough",
|
|
24
|
+
"NoPositionsToRedeem",
|
|
25
|
+
"InsufficientGasBalance"
|
|
26
|
+
]
|