defi-state-querier 0.5.3__py3-none-any.whl → 0.5.5__py3-none-any.whl
Sign up to get free protection for your applications and to get access to all the features.
- defi_services/__init__.py +1 -1
- defi_services/constants/cosmos_decimals_constant.py +112 -5
- defi_services/jobs/processors/cosmos_state_processor.py +8 -13
- defi_services/jobs/queriers/call_state_querier.py +1 -1
- defi_services/services/cosmos_token_services.py +101 -3
- {defi_state_querier-0.5.3.dist-info → defi_state_querier-0.5.5.dist-info}/METADATA +3 -2
- {defi_state_querier-0.5.3.dist-info → defi_state_querier-0.5.5.dist-info}/RECORD +10 -10
- {defi_state_querier-0.5.3.dist-info → defi_state_querier-0.5.5.dist-info}/WHEEL +1 -1
- {defi_state_querier-0.5.3.dist-info → defi_state_querier-0.5.5.dist-info}/LICENSE +0 -0
- {defi_state_querier-0.5.3.dist-info → defi_state_querier-0.5.5.dist-info}/top_level.txt +0 -0
defi_services/__init__.py
CHANGED
@@ -1 +1 @@
|
|
1
|
-
__version__ = "0.5.
|
1
|
+
__version__ = "0.5.5"
|
@@ -1,9 +1,5 @@
|
|
1
1
|
class Denoms:
|
2
|
-
|
3
|
-
self.denom = denom
|
4
|
-
self.decimal = decimal
|
5
|
-
|
6
|
-
data = {
|
2
|
+
cosmos = {
|
7
3
|
"uatom": {
|
8
4
|
"name": "ATOM",
|
9
5
|
"denom": "uatom",
|
@@ -185,3 +181,114 @@ class Denoms:
|
|
185
181
|
"decimal": 6
|
186
182
|
}
|
187
183
|
}
|
184
|
+
orai = {
|
185
|
+
"orai1gjdmce2cfu2ld7cw0p9p7mkmssnry4zhwz3tmsmah435pkdv9qkqg2n7qm": {
|
186
|
+
"name": "Aave USDT",
|
187
|
+
"denom": "orai1gjdmce2cfu2ld7cw0p9p7mkmssnry4zhwz3tmsmah435pkdv9qkqg2n7qm",
|
188
|
+
"decimal": 6
|
189
|
+
},
|
190
|
+
"orai10ldgzued6zjp0mkqwsv2mux3ml50l97c74x8sg": {
|
191
|
+
"name": "aiRight",
|
192
|
+
"denom": "orai10ldgzued6zjp0mkqwsv2mux3ml50l97c74x8sg",
|
193
|
+
"decimal": 6,
|
194
|
+
"base_denom": "AIRI"
|
195
|
+
},
|
196
|
+
"orai10g6frpysmdgw5tdqke47als6f97aqmr8s3cljsvjce4n5enjftcqtamzsd": {
|
197
|
+
"name": "Bitcoin",
|
198
|
+
"denom": "orai10g6frpysmdgw5tdqke47als6f97aqmr8s3cljsvjce4n5enjftcqtamzsd",
|
199
|
+
"decimal": 6
|
200
|
+
},
|
201
|
+
"ibc/a2e2eec9057a4a1c2c0a6a4c78b0239118df5f278830f50b4a6bdd7a66506b78": {
|
202
|
+
"name": "Cosmos Hub",
|
203
|
+
"denom": "ibc/a2e2eec9057a4a1c2c0a6a4c78b0239118df5f278830f50b4a6bdd7a66506b78",
|
204
|
+
"decimal": 6
|
205
|
+
},
|
206
|
+
"orai19rtmkk6sn4tppvjmp5d5zj6gfsdykrl5rw2euu5gwur3luheuuusesqn49": {
|
207
|
+
"name": "Injective",
|
208
|
+
"denom": "orai19rtmkk6sn4tppvjmp5d5zj6gfsdykrl5rw2euu5gwur3luheuuusesqn49",
|
209
|
+
"decimal": 6
|
210
|
+
},
|
211
|
+
"orai1nd4r053e3kgedgld2ymen8l9yrw8xpjyaal7j5": {
|
212
|
+
"name": "Kawaii Islands",
|
213
|
+
"denom": "orai1nd4r053e3kgedgld2ymen8l9yrw8xpjyaal7j5",
|
214
|
+
"decimal": 6
|
215
|
+
},
|
216
|
+
"orai1gzvndtzceqwfymu2kqhta2jn6gmzxvzqwdgvjw": {
|
217
|
+
"name": "Milky",
|
218
|
+
"denom": "orai1gzvndtzceqwfymu2kqhta2jn6gmzxvzqwdgvjw",
|
219
|
+
"decimal": 6,
|
220
|
+
"base_denom": "MILKY"
|
221
|
+
},
|
222
|
+
"ibc/576b1d63e401b6a9a071c78a1d1316d016ec9333d2feb14ad503fac4b8731cd1": {
|
223
|
+
"name": "Neutaro",
|
224
|
+
"denom": "ibc/576b1d63e401b6a9a071c78a1d1316d016ec9333d2feb14ad503fac4b8731cd1",
|
225
|
+
"decimal": 6
|
226
|
+
},
|
227
|
+
"orai1hn8w33cqvysun2aujk5sv33tku4pgcxhhnsxmvnkfvdxagcx0p8qa4l98q": {
|
228
|
+
"name": "OraiDEX",
|
229
|
+
"denom": "orai1hn8w33cqvysun2aujk5sv33tku4pgcxhhnsxmvnkfvdxagcx0p8qa4l98q",
|
230
|
+
"decimal": 6
|
231
|
+
},
|
232
|
+
"orai1lplapmgqnelqn253stz6kmvm3ulgdaytn89a8mz9y85xq8wd684s6xl3lt": {
|
233
|
+
"name": "Orchai",
|
234
|
+
"denom": "orai1lplapmgqnelqn253stz6kmvm3ulgdaytn89a8mz9y85xq8wd684s6xl3lt",
|
235
|
+
"decimal": 6
|
236
|
+
},
|
237
|
+
"orai": {
|
238
|
+
"name": "Oraichain",
|
239
|
+
"denom": "orai",
|
240
|
+
"decimal": 6,
|
241
|
+
"base_denom": "orai"
|
242
|
+
},
|
243
|
+
"orai1lus0f0rhx8s03gdllx2n6vhkmf0536dv57wfge": {
|
244
|
+
"name": "OraiDEX",
|
245
|
+
"denom": "orai1lus0f0rhx8s03gdllx2n6vhkmf0536dv57wfge",
|
246
|
+
"decimal": 6
|
247
|
+
},
|
248
|
+
"orai19q4qak2g3cj2xc2y3060t0quzn3gfhzx08rjlrdd3vqxhjtat0cq668phq": {
|
249
|
+
"name": "Orchai Protocol Staked Compound ATOM",
|
250
|
+
"denom": "orai19q4qak2g3cj2xc2y3060t0quzn3gfhzx08rjlrdd3vqxhjtat0cq668phq",
|
251
|
+
"decimal": 6
|
252
|
+
},
|
253
|
+
"ibc/9c4dcd21b48231d0bc2ac3d1b74a864746b37e4292694c93c617324250d002fc": {
|
254
|
+
"name": "Osmosis",
|
255
|
+
"denom": "ibc/9c4dcd21b48231d0bc2ac3d1b74a864746b37e4292694c93c617324250d002fc",
|
256
|
+
"decimal": 6
|
257
|
+
},
|
258
|
+
"orai1x6uwy6p5rkh4tv44pztafvkj7y9pgqpfyg82006ts4l97fy0kjzs5mzm8p": {
|
259
|
+
"name": "Stride Staked Atom",
|
260
|
+
"denom": "orai1x6uwy6p5rkh4tv44pztafvkj7y9pgqpfyg82006ts4l97fy0kjzs5mzm8p",
|
261
|
+
"decimal": 6
|
262
|
+
},
|
263
|
+
"orai1d2e02yn3h382ajsqjuz0xlc8qvv5d320m2walmcnfsc406azk9vqf639fa": {
|
264
|
+
"name": "Stride Staked Osmo",
|
265
|
+
"denom": "orai1d2e02yn3h382ajsqjuz0xlc8qvv5d320m2walmcnfsc406azk9vqf639fa",
|
266
|
+
"decimal": 6
|
267
|
+
},
|
268
|
+
"orai12hzjxfh77wl572gdzct2fxv2arxcwh6gykc7qh": {
|
269
|
+
"name": "Tether",
|
270
|
+
"denom": "orai12hzjxfh77wl572gdzct2fxv2arxcwh6gykc7qh",
|
271
|
+
"decimal": 6
|
272
|
+
},
|
273
|
+
"orai15un8msx3n5zf9ahlxmfeqd2kwa5wm0nrpxer304m9nd5q6qq0g6sku5pdd": {
|
274
|
+
"name": "USDC",
|
275
|
+
"denom": "orai15un8msx3n5zf9ahlxmfeqd2kwa5wm0nrpxer304m9nd5q6qq0g6sku5pdd",
|
276
|
+
"decimal": 6,
|
277
|
+
"base_denom": "USDC"
|
278
|
+
},
|
279
|
+
"orai1dqa52a7hxxuv8ghe7q5v0s36ra0cthea960q2cukznleqhk0wpnshfegez": {
|
280
|
+
"name": "WETH",
|
281
|
+
"denom": "orai1dqa52a7hxxuv8ghe7q5v0s36ra0cthea960q2cukznleqhk0wpnshfegez",
|
282
|
+
"decimal": 6
|
283
|
+
},
|
284
|
+
"orai1c7tpjenafvgjtgm9aqwm7afnke6c56hpdms8jc6md40xs3ugd0es5encn0": {
|
285
|
+
"name": "Wrapped Tron",
|
286
|
+
"denom": "orai1c7tpjenafvgjtgm9aqwm7afnke6c56hpdms8jc6md40xs3ugd0es5encn0",
|
287
|
+
"decimal": 6
|
288
|
+
},
|
289
|
+
"orai1065qe48g7aemju045aeyprflytemx7kecxkf5m7u5h5mphd0qlcs47pclp": {
|
290
|
+
"name": "Staking Compound ORAI",
|
291
|
+
"denom": "orai1065qe48g7aemju045aeyprflytemx7kecxkf5m7u5h5mphd0qlcs47pclp",
|
292
|
+
"decimal": 6
|
293
|
+
}
|
294
|
+
}
|
@@ -3,24 +3,19 @@ from defi_services.services.cosmos_token_services import CosmosTokenServices
|
|
3
3
|
|
4
4
|
|
5
5
|
class CosmosStateProcessor:
|
6
|
-
def __init__(self, lcd: str,
|
6
|
+
def __init__(self, lcd: str, rest_uri: str):
|
7
7
|
self.lcd = lcd
|
8
|
-
self.
|
8
|
+
self.rest_uri = rest_uri
|
9
9
|
|
10
|
-
def get_token_balance(self, address):
|
11
|
-
cosmos = CosmosTokenServices(self.lcd, self.
|
12
|
-
data = cosmos.query_balances(address)
|
13
|
-
|
14
|
-
for item in data:
|
15
|
-
denom = item.get('denom', "").lower()
|
16
|
-
amount = int(item.get('amount', None))
|
17
|
-
decimal = Denoms.data.get(denom, {}).get("decimal", 0)
|
18
|
-
result[denom] = amount / 10 ** decimal
|
19
|
-
return result
|
10
|
+
def get_token_balance(self, address, tokens):
|
11
|
+
cosmos = CosmosTokenServices(self.lcd, self.rest_uri)
|
12
|
+
data = cosmos.query_balances(address, tokens)
|
13
|
+
return data
|
20
14
|
|
21
15
|
def run(self, address: str, queries: list):
|
22
16
|
result = []
|
23
|
-
|
17
|
+
tokens = [query.get('entity_id').lower() for query in queries if query.get('query_type') == 'token_balance']
|
18
|
+
token_balances = self.get_token_balance(address, tokens)
|
24
19
|
for query in queries:
|
25
20
|
query_id = query.get("query_id")
|
26
21
|
entity_id = query.get("entity_id")
|
@@ -47,7 +47,7 @@ class CallStateQuerier(StateQuerier):
|
|
47
47
|
fn_paras = value.get(Query.params)
|
48
48
|
block_number = value.get(Query.block_number)
|
49
49
|
items = key.split('_')
|
50
|
-
if
|
50
|
+
if (not value.get(Query.address) or value.get(Query.address) == Token.native_token) and "balanceof" == items[0]:
|
51
51
|
w3_multicall.add(W3Multicall.Call(
|
52
52
|
self.multicall_address, MULTICALL_V3_ABI, fn_paras=fn_paras,
|
53
53
|
fn_name="getEthBalance", block_number=block_number, key=key
|
@@ -1,15 +1,25 @@
|
|
1
1
|
import json
|
2
2
|
from urllib.parse import quote
|
3
3
|
import requests
|
4
|
+
import base64
|
5
|
+
|
6
|
+
from cosmpy.cosmwasm.rest_client import RestClient
|
7
|
+
from cosmpy.cosmwasm.rest_client import CosmWasmRestClient
|
8
|
+
from cosmpy.protos.cosmwasm.wasm.v1.query_pb2 import QuerySmartContractStateRequest
|
9
|
+
|
10
|
+
from defi_services.constants.cosmos_decimals_constant import Denoms
|
4
11
|
|
5
12
|
|
6
13
|
class CosmosTokenServices:
|
7
|
-
def __init__(self, lcd: str,
|
14
|
+
def __init__(self, lcd: str, rest_uri: str):
|
8
15
|
self.lcd = lcd
|
9
|
-
self.
|
16
|
+
self.rest_uri = rest_uri
|
17
|
+
self.client = CosmWasmRestClient(RestClient(rest_address=rest_uri))
|
18
|
+
self.decimals = Denoms.cosmos
|
19
|
+
self.decimals.update(Denoms.orai)
|
10
20
|
|
11
21
|
# queries the balance of all coins for a single account.
|
12
|
-
def
|
22
|
+
def query_coin_balances(self, address: str):
|
13
23
|
responses = []
|
14
24
|
endpoint = '/cosmos/bank/v1beta1/balances/'
|
15
25
|
try:
|
@@ -40,3 +50,91 @@ class CosmosTokenServices:
|
|
40
50
|
return json.loads(requests.get(self.lcd + endpoint, timeout=60).content)
|
41
51
|
except Exception:
|
42
52
|
raise Exception
|
53
|
+
|
54
|
+
def query_balances(self, address: str, tokens: list):
|
55
|
+
balance_query, cw20_tokens = self.get_balance_function_info(address, tokens)
|
56
|
+
queries = []
|
57
|
+
for token in cw20_tokens:
|
58
|
+
queries.append({
|
59
|
+
"address": token,
|
60
|
+
"data": self.encode_data({"token_info": {}})
|
61
|
+
})
|
62
|
+
queries.append({
|
63
|
+
"address": "orai1dyljypavg7qpt5d72a48a4pyg38d580aat55qql6tdcwfgydy6jsznk0h5",
|
64
|
+
"data": self.encode_data(balance_query)
|
65
|
+
})
|
66
|
+
query = {
|
67
|
+
"aggregate": {
|
68
|
+
"queries": queries
|
69
|
+
}
|
70
|
+
}
|
71
|
+
query = json.dumps(query).encode('utf-8')
|
72
|
+
request_ = QuerySmartContractStateRequest(
|
73
|
+
address="orai1q7x644gmf7h8u8y6y8t9z9nnwl8djkmspypr6mxavsk9ual7dj0sxpmgwd", query_data=query)
|
74
|
+
response_ = self.client.SmartContractState(request_)
|
75
|
+
decoded_data = self.decode_response_data(response_, cw20_tokens, tokens)
|
76
|
+
return decoded_data
|
77
|
+
|
78
|
+
def decode_response_data(self, response_data, cw20_tokens, tokens):
|
79
|
+
response_data = json.loads(response_data.data)
|
80
|
+
return_data = response_data.get("return_data", [])
|
81
|
+
if not len(return_data):
|
82
|
+
return None
|
83
|
+
decimals = {}
|
84
|
+
for idx in range(0, len(cw20_tokens)):
|
85
|
+
encoded_data = return_data[idx]
|
86
|
+
decoded_data = self.decode_data(encoded_data['data'])
|
87
|
+
decimals[cw20_tokens[idx]] = decoded_data.get("decimals")
|
88
|
+
|
89
|
+
balance_data = self.decode_data(return_data[-1]['data'])
|
90
|
+
balances = {}
|
91
|
+
for idx in range(0, len(tokens)):
|
92
|
+
balances[tokens[idx]] = int(balance_data[idx])
|
93
|
+
|
94
|
+
for token in tokens:
|
95
|
+
if token in decimals:
|
96
|
+
balances[token] /= 10**decimals[token]
|
97
|
+
else:
|
98
|
+
balances[token] /= 10**self.decimals.get(token, {}).get("decimal", 0)
|
99
|
+
|
100
|
+
return balances
|
101
|
+
|
102
|
+
@staticmethod
|
103
|
+
def encode_data(params: dict):
|
104
|
+
data = json.dumps(params).encode('utf-8')
|
105
|
+
encode_data = base64.b64encode(data).decode()
|
106
|
+
return encode_data
|
107
|
+
|
108
|
+
@staticmethod
|
109
|
+
def decode_data(encode_data: str):
|
110
|
+
decoded_data = base64.b64decode(encode_data)
|
111
|
+
decoded_data = json.loads(decoded_data)
|
112
|
+
return decoded_data
|
113
|
+
|
114
|
+
@staticmethod
|
115
|
+
def get_balance_function_info(address: str, tokens: list):
|
116
|
+
data = {
|
117
|
+
"balance": {
|
118
|
+
"address": address,
|
119
|
+
"assets": []
|
120
|
+
}
|
121
|
+
}
|
122
|
+
cw20_tokens = []
|
123
|
+
for token in tokens:
|
124
|
+
head = token[:4]
|
125
|
+
if len(token) < 10 or head == 'ibc/':
|
126
|
+
data["balance"]["assets"].append({
|
127
|
+
"native_token": {
|
128
|
+
"denom": token
|
129
|
+
}
|
130
|
+
})
|
131
|
+
else:
|
132
|
+
data["balance"]["assets"].append(
|
133
|
+
{
|
134
|
+
"token": {
|
135
|
+
"contract_addr": token
|
136
|
+
}
|
137
|
+
}
|
138
|
+
)
|
139
|
+
cw20_tokens.append(token)
|
140
|
+
return data, cw20_tokens
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: defi-state-querier
|
3
|
-
Version: 0.5.
|
3
|
+
Version: 0.5.5
|
4
4
|
Summary: Calculate apy, apr, and wallet information,... in decentralized applications.
|
5
5
|
Home-page: https://github.com/Centic-io/defi-state-querier
|
6
6
|
Author: Viet-Bang Pham
|
@@ -13,9 +13,10 @@ Requires-Python: >=3.6
|
|
13
13
|
Description-Content-Type: text/markdown
|
14
14
|
License-File: LICENSE
|
15
15
|
Requires-Dist: web3 >=6.0.0
|
16
|
-
Requires-Dist: query-blockchain-state-lib
|
16
|
+
Requires-Dist: query-blockchain-state-lib >=1.0.1
|
17
17
|
Requires-Dist: python-dotenv >=1.0.0
|
18
18
|
Requires-Dist: pymongo >=4.3.3
|
19
|
+
Requires-Dist: cosmpy >=0.9.2
|
19
20
|
|
20
21
|
# defi-state-querier
|
21
22
|
|
@@ -1,4 +1,4 @@
|
|
1
|
-
defi_services/__init__.py,sha256=
|
1
|
+
defi_services/__init__.py,sha256=78mfpLewKVki6c9UONSUdlVme_JsN9ZwIfp4Hf4jmG0,22
|
2
2
|
defi_services/abis/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
3
3
|
defi_services/abis/multicall_v3_abi.py,sha256=0aPxjrJJFU17fODjvYFRDn5Y5J1yi_AJKc8v1uohNGY,12352
|
4
4
|
defi_services/abis/dex/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
@@ -295,7 +295,7 @@ defi_services/abis/vault/lido/lido_wsteth.py,sha256=DJhMToJS43vV2r5WP2kZSiagt7R8
|
|
295
295
|
defi_services/abis/vault/lido/lidor_accounting_oracle_hash_consensus.py,sha256=TWCLaccDgvWJZZKLAeoznYgGi3g3M_hFqoo3KE_L7K8,21039
|
296
296
|
defi_services/constants/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
297
297
|
defi_services/constants/chain_constant.py,sha256=aU7xLaQYLro-7sI5Jpyi0tEHhEQcchyxlxEEJaotFMM,1018
|
298
|
-
defi_services/constants/cosmos_decimals_constant.py,sha256=
|
298
|
+
defi_services/constants/cosmos_decimals_constant.py,sha256=dWhP6QRbvatuV5j2qEZMq2b4WXSFnU6DTWN4khQ2ac8,13338
|
299
299
|
defi_services/constants/db_constant.py,sha256=gDMFFjhPOgQHuS9sPOTFbsfSdIfdWQEE4tGlxHQhNsE,2566
|
300
300
|
defi_services/constants/mongo_constant.py,sha256=qsDIq2Gg5MkBGaEOh4Fd9y6fOOidF4gGPnQwtaPon3E,398
|
301
301
|
defi_services/constants/network_constants.py,sha256=aCUhPFOA9oAMXrIrw67wfEvc4B3HcTlCCz9U1Ku4o50,13574
|
@@ -313,19 +313,19 @@ defi_services/constants/entities/vault_services.py,sha256=IMmQc15wS1KA7EuQqM_Ara
|
|
313
313
|
defi_services/jobs/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
314
314
|
defi_services/jobs/processors/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
315
315
|
defi_services/jobs/processors/call_state_processor.py,sha256=WseX0OaMA5D_ANYofrz7W2BooSMdHlGRay4NuiABmM4,436
|
316
|
-
defi_services/jobs/processors/cosmos_state_processor.py,sha256=
|
316
|
+
defi_services/jobs/processors/cosmos_state_processor.py,sha256=yGC0RRcSKslzUbAxfZzvQm0mRfBO4YWa7a8V1kKQ_RI,1220
|
317
317
|
defi_services/jobs/processors/multi_call_state_processor.py,sha256=AksswGMSyStbnvkQcBVb0Y2tdpkUgc1CWoeSiMpGy8U,462
|
318
318
|
defi_services/jobs/processors/multi_state_processor.py,sha256=Od7Y8zPz7xj0L-_0YuK4wg_94fX8Q1PquuKUUYteIJU,5731
|
319
319
|
defi_services/jobs/processors/solana_state_processor.py,sha256=szsBYrkEV8kBzuA_iaSVescnwKJ2MHoTbut5kORbWTs,4065
|
320
320
|
defi_services/jobs/processors/state_processor.py,sha256=Ze_5isU_l_APB262E-VV_4KZwEG6W0XE6PikJZIcAoM,7291
|
321
321
|
defi_services/jobs/processors/substrate_state_processor.py,sha256=KkiY1NkaxnizNJBTfn4twB-zuQo3fT3akOlbie8VF5g,3940
|
322
322
|
defi_services/jobs/queriers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
323
|
-
defi_services/jobs/queriers/call_state_querier.py,sha256=
|
323
|
+
defi_services/jobs/queriers/call_state_querier.py,sha256=sxKXNpI6pOHAqHZ0jaLuxDX6Izka6IqBSWpbtu_o5FY,4820
|
324
324
|
defi_services/jobs/queriers/solana_state_querier.py,sha256=TQELYo6GUoF8s-LfetqYbclNaH8bakQqC7y2ifACIb8,3239
|
325
325
|
defi_services/jobs/queriers/state_querier.py,sha256=q7cAW395urZjcWTpqw8m_nDunLyyTuAXJ3DRx_1HOxo,7384
|
326
326
|
defi_services/jobs/queriers/substrate_state_querier.py,sha256=_T0Dk06sP_uBKaxgj2J_EBtJDoq-hi8jU7Np4iuO0LA,3858
|
327
327
|
defi_services/services/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
328
|
-
defi_services/services/cosmos_token_services.py,sha256=
|
328
|
+
defi_services/services/cosmos_token_services.py,sha256=8LfaKUxcaj9IMQm31a_UY5Zqayo0AmkvgIWXsgTcCjY,5181
|
329
329
|
defi_services/services/dex_protocol_services.py,sha256=J93P7kwy1v98aeA95ErT7jDCCOAelFuCNiTXl3PVFFo,6656
|
330
330
|
defi_services/services/nft_services.py,sha256=vKva0OJQTTxgP1lrZ5ij2sw2N44JxN5dfLLtvNJB6aA,2188
|
331
331
|
defi_services/services/protocol_services.py,sha256=3Yca433xGXowcV4EjFoQ90AJHg-SfuOBsDF7aMCJ8Zk,7626
|
@@ -464,8 +464,8 @@ defi_services/utils/market_service.py,sha256=imPtPHBkpEx5JnhqeIWYqbCjsIEm8IKBYHN
|
|
464
464
|
defi_services/utils/memory_storage.py,sha256=BOT8laB0iVSCGE-oDlpWJQLbSC6X2blKX4zuQbs4inc,851
|
465
465
|
defi_services/utils/sqrt_price_math.py,sha256=9lgUeWFT4wjl3Vq3b7-jZ2bGvvZx7dDBSfVnM3lsZ8o,5575
|
466
466
|
defi_services/utils/thread_proxy.py,sha256=5Z8biAyEReUkh3vfJSvEv7GwMe3CsE5M8CbghkQtePw,2951
|
467
|
-
defi_state_querier-0.5.
|
468
|
-
defi_state_querier-0.5.
|
469
|
-
defi_state_querier-0.5.
|
470
|
-
defi_state_querier-0.5.
|
471
|
-
defi_state_querier-0.5.
|
467
|
+
defi_state_querier-0.5.5.dist-info/LICENSE,sha256=6jmfxa8nUIwfKnzZUxAHJSJ_IS7h7mpbJq26cWjoo-o,1063
|
468
|
+
defi_state_querier-0.5.5.dist-info/METADATA,sha256=djRcAZmtLY0cG2hmAVNZoR7fnOYwhpMj43OuFucjMnI,4417
|
469
|
+
defi_state_querier-0.5.5.dist-info/WHEEL,sha256=mguMlWGMX-VHnMpKOjjQidIo1ssRlCFu4a4mBpz1s2M,91
|
470
|
+
defi_state_querier-0.5.5.dist-info/top_level.txt,sha256=C-OTxHK6MknKK-nAbEzCPDUl1M6pktRhgJrmsozdf6g,14
|
471
|
+
defi_state_querier-0.5.5.dist-info/RECORD,,
|
File without changes
|
File without changes
|