Chia-Network / chia-blockchain

Chia blockchain python implementation (full node, farmer, harvester, timelord, and wallet)
Apache License 2.0
10.82k stars 2.03k forks source link

[Bug] When take_offer has FAILED, offer becomes permanently broken? #16443

Closed mor closed 11 months ago

mor commented 1 year ago

What happened?

I did a take_offer that went into PENDING_CONFIRM status for a while, but eventually went FAILED instead of CONFIRMED:

Record with id: 8575ac44f3e57b882745b26eaa0154af4901a404909f1bede18cfafbdfc4c1eb

Created at: 2023-09-27 02:58:50 Confirmed at: Not confirmed Accepted at: 2023-09-27 02:58:50 Status: FAILED

After restoring my wallet balances with delete_unconfirmed_transactions, I tried again to take the offer, but it crashed with:

Would you like to take this offer? (y/n): y Exception from 'wallet' {'error': 'Trade for this offer already exists.', 'success': False}: Traceback (most recent call last): File "chia/cmds/cmds_util.py", line 110, in get_any_service_client File "chia/cmds/cmds_util.py", line 226, in get_wallet_client File "chia/cmds/wallet_funcs.py", line 761, in take_offer File "chia/rpc/wallet_rpc_client.py", line 831, in take_offer File "chia/rpc/rpc_client.py", line 61, in fetch ValueError: {'error': 'Trade for this offer already exists.', 'success': False}

So, I did a cancel_offer and it eventually went to CANCELLED status:

Record with id: 8575ac44f3e57b882745b26eaa0154af4901a404909f1bede18cfafbdfc4c1eb

Created at: 2023-09-27 02:58:50 Confirmed at: Not confirmed Accepted at: 2023-09-27 02:58:50 Status: CANCELLED

But when I try to take_offer, it still crashes with:

Would you like to take this offer? (y/n): y Exception from 'wallet' {'error': 'Trade for this offer already exists.', 'success': False}: Traceback (most recent call last): File "chia/cmds/cmds_util.py", line 110, in get_any_service_client File "chia/cmds/cmds_util.py", line 226, in get_wallet_client File "chia/cmds/wallet_funcs.py", line 761, in take_offer File "chia/rpc/wallet_rpc_client.py", line 831, in take_offer File "chia/rpc/rpc_client.py", line 61, in fetch ValueError: {'error': 'Trade for this offer already exists.', 'success': False}

The offer in question is live on dexie at:

https://dexie.space/offers/66r72Kfm9i5wE1EDu9TX7HaHoDbLvdLYrt3uNcaJTTDF

How to un-stuck the transaction to accomplish take_offer?

Version

2.0.1

What platform are you using?

Linux

What ui mode are you using?

CLI

Relevant log output

No response

emlowe commented 1 year ago

What likely happened was this offer was accepted by someone else on chain, so you didn't get to complete it - we suspect the offer isn't valid any more. You are getting strange errors which we can investigate

You can check the validity of the offer with chia wallet take_offer -e ...

mor commented 1 year ago

Okay, I'm starting to see the edges of info that explain all that. Currently the '-e' option only lists the original trade. I don't see how that's helpful--but then trying to take_offer pukes out a newer error than I was getting before:

chia@Farmer:~$ chia wallet take_offer -f XXXXXXXXX -e offer1qqr83wcuu2rykcmqvpsx2gqqrc59at775ee02c4jqvfexkkupw463prywe8p8ql9cma5297lvghldp9fswm4x3mtllga5la57c06ml28d0larkhllaqdtlhqcf7cr7d7euy77ksm3kmumrvvn2g8kfykw97cp7wukkqhzwcrhdmd0jr224qet4v2vll7wwh5xrldn5a0c4qu7re0f8049dnucewchnmujm47h05ap8dq9tf2ged3g3r5luvjzvst5ckwkkq3r2cjcwam5y4r3sw7jmeeee7rdjauwhvlh28akn0yvmw4zqz5y2mdsg2qep30avgmkuwvtcunm7lfhk80v260nsshcad6jas2p2xpwvh7xl9m2dqs5y8xggap2mx0wm0d2tmu7pc4pzktxh82h7uk3ukkgpw6twk5h2rd6kehd47272wk8ndg5xtdckxtvcjxtvc68tvc69tvcyrdckwfh7l854t4f6spsh4v74atr44tw347834l9zv4hlae45xy9hd27t38g24c452kengxm3fyakfz40zal865xym0ckwm8qsjycellve30catr24f9q4d86w94xasrgadnrg4dnrg9dntg9fnm29pjmw9png4dnxv4x0mnxultll0ezh0fkwjhmu7k5h7ejczwwtu7hf44dj7tt04d72rtg24c45zhpk745v8ufc8926kymkx7t5nckmew0mdgh2t4lx4gl0w0q5n04x2xfkatan0ved4gmchlutpumw93jmxy3jmxx36mxx32mxxs2mx3zmxyujhdh04mjtf77xalwhe3mkaeaa29ljadp2we3wmzla2tt0667f0pf05r2u269tvecqa30u7mmdqwfakhy86yd8uvl2tnrn3tzzy7tz9dm76yr6ecgmcd70df3att7ma223wd9ln6fldlrhvdz9equd82fjduuhhfaahpmsklnvajtk2crtwcgcryhscdhzcednzgednrgadnrg4vrzcdj6p2qc0mnlc80g4zd5exu0ccvsndww99hls6mn7mmmnrs8jmr2a74ajgd3c5daamsewrn6jdp2czhxp5ytmmtxrapcz8vxpr0twgu43fz9ulwrzkxeyelx4657p79lramex24klht00wtze9uezjltnt03s8328mdhjltftf770texeja8usmvcqeyt8mhlstelhmaa3hc4jax0jma6hskw600dkjavf3n4774kkr3798887lljshn7l6lenctscplu96jqscdp850wdxez8tke70lmln0lqk8a89mv6ycptcy506lvgn8ytwm7hr2rsffj7kxg7dlu5jatvta0e5qh4r90alcznwfmj53mphnlzpjlthuadwuzcljm47u95cxj9uj8dc29u275m452vzj3yh7knunekd56lpp9lq6hykkdz7v3dtjc6p5z8lxgtgjlyuu5nd7xvwzy6h8l44mun9f5gfpkat2ahd0c4war88637qa256xdktskq3uehdan2w6y246w4r3c8hl58pul08xnmt9qcec8950pfdjhr7uek672j0m2vm75x3cfjgwl7tmsnmy307az03r02zaha54cazpufuu2dl60f3wdsd0wu74q72u2zu97vy7nfej9g9rglzl5psfqer2n8mwwxkxeu8tv95al7hr79uk6z5aec66tp0jptmg43e4p9hgryskdcnlskzp4zjqevv27dqsv52pzmsxnyzs5ped4amlcdgc67u6769kekxgd8m6e7cm7cmll4lkly83deg2wlx3pjpn48txejpuwz3heynjs0su925hpnxnhswd0u9j4a3l4y6n7uagh38dfmtjnufa4y255un6xp7n0akf6a7lmuadtlh452c3k8ka75ddn9v7r6e0qgqzse5d95848c3g
Summary:
  OFFERED:
    - ALTOOL (Wallet ID: 5): 50.0 (50000 mojos)
  REQUESTED:
    - ALORE (Wallet ID: 9): 2000.0 (2000000 mojos)
    - ALFOOD (Wallet ID: 7): 2000.0 (2000000 mojos)
    - ALWORK (Wallet ID: 6): 1000.0 (1000000 mojos)
    - ALWOOD (Wallet ID: 8): 2000.0 (2000000 mojos)

Included Fees: 0 XCH, 0 mojos
chia@Farmer:~$ chia wallet take_offer -f XXXXXXXXX offer1qqr83wcuu2rykcmqvpsx2gqqrc59at775ee02c4jqvfexkkupw463prywe8p8ql9cma5297lvghldp9fswm4x3mtllga5la57c06ml28d0larkhllaqdtlhqcf7cr7d7euy77ksm3kmumrvvn2g8kfykw97cp7wukkqhzwcrhdmd0jr224qet4v2vll7wwh5xrldn5a0c4qu7re0f8049dnucewchnmujm47h05ap8dq9tf2ged3g3r5luvjzvst5ckwkkq3r2cjcwam5y4r3sw7jmeeee7rdjauwhvlh28akn0yvmw4zqz5y2mdsg2qep30avgmkuwvtcunm7lfhk80v260nsshcad6jas2p2xpwvh7xl9m2dqs5y8xggap2mx0wm0d2tmu7pc4pzktxh82h7uk3ukkgpw6twk5h2rd6kehd47272wk8ndg5xtdckxtvcjxtvc68tvc69tvcyrdckwfh7l854t4f6spsh4v74atr44tw347834l9zv4hlae45xy9hd27t38g24c452kengxm3fyakfz40zal865xym0ckwm8qsjycellve30catr24f9q4d86w94xasrgadnrg4dnrg9dntg9fnm29pjmw9png4dnxv4x0mnxultll0ezh0fkwjhmu7k5h7ejczwwtu7hf44dj7tt04d72rtg24c45zhpk745v8ufc8926kymkx7t5nckmew0mdgh2t4lx4gl0w0q5n04x2xfkatan0ved4gmchlutpumw93jmxy3jmxx36mxx32mxxs2mx3zmxyujhdh04mjtf77xalwhe3mkaeaa29ljadp2we3wmzla2tt0667f0pf05r2u269tvecqa30u7mmdqwfakhy86yd8uvl2tnrn3tzzy7tz9dm76yr6ecgmcd70df3att7ma223wd9ln6fldlrhvdz9equd82fjduuhhfaahpmsklnvajtk2crtwcgcryhscdhzcednzgednrgadnrg4vrzcdj6p2qc0mnlc80g4zd5exu0ccvsndww99hls6mn7mmmnrs8jmr2a74ajgd3c5daamsewrn6jdp2czhxp5ytmmtxrapcz8vxpr0twgu43fz9ulwrzkxeyelx4657p79lramex24klht00wtze9uezjltnt03s8328mdhjltftf770texeja8usmvcqeyt8mhlstelhmaa3hc4jax0jma6hskw600dkjavf3n4774kkr3798887lljshn7l6lenctscplu96jqscdp850wdxez8tke70lmln0lqk8a89mv6ycptcy506lvgn8ytwm7hr2rsffj7kxg7dlu5jatvta0e5qh4r90alcznwfmj53mphnlzpjlthuadwuzcljm47u95cxj9uj8dc29u275m452vzj3yh7knunekd56lpp9lq6hykkdz7v3dtjc6p5z8lxgtgjlyuu5nd7xvwzy6h8l44mun9f5gfpkat2ahd0c4war88637qa256xdktskq3uehdan2w6y246w4r3c8hl58pul08xnmt9qcec8950pfdjhr7uek672j0m2vm75x3cfjgwl7tmsnmy307az03r02zaha54cazpufuu2dl60f3wdsd0wu74q72u2zu97vy7nfej9g9rglzl5psfqer2n8mwwxkxeu8tv95al7hr79uk6z5aec66tp0jptmg43e4p9hgryskdcnlskzp4zjqevv27dqsv52pzmsxnyzs5ped4amlcdgc67u6769kekxgd8m6e7cm7cmll4lkly83deg2wlx3pjpn48txejpuwz3heynjs0su925hpnxnhswd0u9j4a3l4y6n7uagh38dfmtjnufa4y255un6xp7n0akf6a7lmuadtlh452c3k8ka75ddn9v7r6e0qgqzse5d95848c3g
Summary:
  OFFERED:
    - ALTOOL (Wallet ID: 5): 50.0 (50000 mojos)
  REQUESTED:
    - ALORE (Wallet ID: 9): 2000.0 (2000000 mojos)
    - ALFOOD (Wallet ID: 7): 2000.0 (2000000 mojos)
    - ALWORK (Wallet ID: 6): 1000.0 (1000000 mojos)
    - ALWOOD (Wallet ID: 8): 2000.0 (2000000 mojos)

Included Fees: 0 XCH, 0 mojos

Would you like to take this offer? (y/n): y
Exception from 'wallet' {'error': 'This offer is no longer valid', 'success': False}:
Traceback (most recent call last):
  File "chia/cmds/cmds_util.py", line 110, in get_any_service_client
  File "chia/cmds/cmds_util.py", line 226, in get_wallet_client
  File "chia/cmds/wallet_funcs.py", line 761, in take_offer
  File "chia/rpc/wallet_rpc_client.py", line 831, in take_offer
  File "chia/rpc/rpc_client.py", line 61, in fetch
ValueError: {'error': 'This offer is no longer valid', 'success': False}
mor commented 1 year ago

Although, I have to point out that this offer's pending/confirm dates are well after I reported this problem. It looks more like the trade permanently broke for me, but someone else was later able to do a take_offer.

Quexington commented 1 year ago

If you still have the original logs, it would be good to search them for mempool errors. When a trade is marked as failed, it's usually because it couldn't go through in the mempool for some reason. This usually means that something is wrong with the original offer and perhaps instead of it being taken since you tried, it has been cancelled.

mor commented 1 year ago

I have the logs. Would I need DEBUG log-level for helpful info? Grepping the trade-id produces only these two lines:

debug.log.2:2023-09-27T12:06:09.164 wallet chia.wallet.trade_manager  : INFO     Secure-Cancel pending offer with id trade_id 8575ac44f3e57b882745b26eaa0154af4901a404909f1bede18cfafbdfc4c1eb
debug.log.2:2023-09-27T12:07:20.658 wallet chia.wallet.trade_manager  : INFO     Trade with id: 8575ac44f3e57b882745b26eaa0154af4901a404909f1bede18cfafbdfc4c1eb canceled
mor commented 1 year ago

Without knowing what I'm looking for, I tried:

grep mempool * | grep ERROR

Nothing found in any of my logs. There are WARNINGs--all reference the time it took for add_spendbundle or pre_validate_spendbundle.

Quexington commented 1 year ago

Could you potentially post the logs? We're looking for SpendBundle has been rejected by the FullNode.

mor commented 1 year ago

Okay there are some WARNING lines like that. Where should I send the logs? I don't want to just post them here. It goes like this, but there are 100+ more coins in the list that I truncated.

2023-09-26T23:50:57.192 wallet chia.wallet.wallet_node    : WARNING  SpendBundle has been rejected by the FullNode. {'error': 'GENERATOR_RUNTIME_ERROR',
 'status': 3,
 'txid': '0xba120335e49a098bf7b1a2e11edc8891185b19114be98b82c9bd42f02f5ed760'}
2023-09-26T23:50:57.222 wallet chia.wallet.wallet_state_manager: INFO     Checking if we need to cancel trade for tx: ba120335e49a098bf7b1a2e11edc8891185b19114be98b82c9bd42f02f5ed760
2023-09-26T23:50:57.403 wallet chia.wallet.wallet_state_manager: INFO     Subscribing to unspendable offer coins: ['0e5fa6123822534b9662155384c1c5671e9e8448409970048e51ceba1a957253', '145c5dffe55208962c8aee24755
82abfa99df2c13190ad6942e0b09922b93501', '909beb339b4085ae1e19b63927ea51db1cbee17ebc3e3fb2a5c55da59af69e3c', '0af621c5755cd7b6bb8e0b0390fb54988823d46b6913acb7428b94bfd534dae3',
mor commented 1 year ago

Coincidentally, I have another 'permanently broken' FAILED trade from today. But it involves a swap of NFTs and can not possibly be due to someone else taking the trade, since I have the unique item on one side of the trade. I think it failed because the royalties in the form of a CAT exceeded my wallet balance for that CAT. So I got sufficient CAT balance in my wallet, but the take_offer is failing on the same python exception from my first post at the top of this bug report: "Exception from 'wallet' {'error': 'Trade for this offer already exists.', 'success': False}:" The trade is still listed as 'Active' at dexie, hours after all that... https://dexie.space/offers/A5x8WSBCX3Zu7u9kfMUMrQM6XnU4nk5CiT3t2z7SDC7o How to fix so I can take_offer?

Quexington commented 1 year ago

The next step in debugging this would be to post the taken offer from your side to see why it's raising. Run the following RPC command: chia rpc wallet get_offer '{"trade_id": <trade_id_hex>, "file_contents": True}' and paste the blob it returns to you here if you are comfortable (otherwise you can DM it to me @quexington on keybase). The only thing I can think of without seeing it is that potentially you have too many coins that you are trying to take the offer with and are exceeding block cost but I'm not sure and I think I would expect a different error. Anyways, when you have the time, the offer you are attempting to submit to the mempool would be great :+1:

mor commented 1 year ago
chia@Farmer:~$ chia rpc wallet get_offer '{"trade_id": 0x8dc04020cad2a0096da246466956ba405f55b29404cdb6e01b182202a6c5ec6c, "file_contents": True}'
Invalid REQUEST JSON: Expecting ',' delimiter: line 1 column 15 (char 14)
Quexington commented 1 year ago

I think the hex string needs to be double quoted

mor commented 1 year ago

I'd tried that and it didn't work either, but I realized the True also needed double quotes. So, here it is:

chia@Farmer:~$ chia rpc wallet get_offer '{"trade_id": "9934ec2abdbf6e13625a2ea7e8a93c56719b06a51fd71fdb1963918b4e2c59cd", "file_contents": "True"}'
{
    "offer": "offer1qqr83wcuu2ryhmvu09gpxac5cupavq79d0kg3z45gtzaf2sswg3pvydfkcmgy6pdugyujm3khvundjfxmxgpfe2s6rpqsz3d2c4xtfg56j9g4g3f9pzzy6q8kjqxw2cgezkn8z5k99f2mf5ydw7xx4f636eljg7fv30da05hmlhm6ldlaanjv9q2v5qvtsnr7xrml57ns2dpwpy4z3rake5t6sj4f6h7m3ma0djutcudgfarw9f8et6am7wy52hdeu03cj99n42d5nt0hrfda0dh3xcrmap0p3tj564tfdksv8dvuflh4d9g9suray9emt82xyngeyy56dg3x08ukkkcgdrx29uf4swkup0m0nm5q0ejk8s2puwz2shrwewex7f77y4dkl2yuzlusw858mfjlf0x8e363lv55h2fajl0fzsvhl6r8pv7hdajaats7vs0tl07myq2f0hl7m40khgmncs8c5uhux9edfk0nepjhw88rdhg6msu8ply7pkqmnt5zka50fq29vdh9m22dcelcy4f2h8fu84v4e6pt2lqpqd58fgzf9p2jj5yfjz3p9jzcsxw2w9y2nq5gegpgs95p3v2ucztlzvppettx3ez286spq2zazqu22a2pyz24xfxz09pcpzc9grz2lec0tlz6k25rxlpge3mnw7g29skwc3sj8stdyjlxllueqd4v8agfg42ekqh82erkudz7zlua62ygrmtq4ztkn9xfp5kw3se3ajuf9crp2ysdcr3kssqus3s9pgzqg5qextkn6qv95wey22epz5f9zhgsqvgwuge3ge3zz8pt88wsedu7ejjg5k26r8fgg39nhsc9ru9ewf6sqqvugcfj2qrc4pdskjve0q9gcju422sjssqpq8wzuqy5pgvhsr386zwzlqwyejt9y98s7a3qqgy4pfwqgs8y8eut99gtyc982kveaff3w9vlrea5n6fy06p3vmqwc3v2qddw95xu47m2tdyh3605lh3cyflm5wpunqc9euq8hej6teqwh7295tuustjdv7kj5tmflxvxcwl3jak9dr20thcu7csc0668fk4yhah480694jcnt4ju36daydvr7mhchpkddmjvuhk2tk98k3mexspa2tzjfqezrx2gg7zdyjphh5r4lflpj4thac4la79mwmlplzhu2d4smut2mrw38x0mtcd7csh78ej9eguu0jcfkwaymwkm0r3uwc7jvkgwepedu7vkv0aelr5qckxnn86s3axnkupffe89mur9mpjdudm6r6mjucezad50nnlndf4fmwkdy2kgeeh3cv0j5tznafaduk6m7j6vnhchj2yqqfnaee5envntf5clkp5730rama4tsa7qmesyfnx0dr6nlhcf2w5gay6xjw2j02l9jjn5n5wkucjy3k0x9de8mjklmd9pyzcxy38szp9cecd4lqttv6ryh7njtgds7xsxyruaey83mmyyrk9f3h25r2c4r5up36wmstxt5esgx2nf8l42jser3yvy3nzgvfr3yv5nnzgvtrg07k8cve4nlmzc6hwvnnsptdgym6xg5cgafpvt7c52k45mf4t70e8y44lrxkuc5c5wsca8mf0txrayfdutg385s4wu3k78cvmgtk3deufjc0n727garez3e6tga9v39va2uatyrnej9uava0dxz9nmmfcdu5z20x8qtu030mhmynurszvxwmv7kdlvh544s7rz2uwldjauwdhu22azwl3hyr27cad3s24wuesteyyfwnan42cxum5mc8vxru4xsnl40d29rreug0x38ejpz2tnucspydcjnz2tf4hqkt7dnz0hgv7303pureuezyu35ale0mj9vat6u6qvdvwz6yxuvscezuhj2uff399f72wry6l066zgj2udtw3xe7lvmh8whq2ugf26439q5scuz5kuvpyf3885qwt2tjy359v2kssswz59wsqqp645pvr4urpzw3v605df9hput9hsat969nt350fesl9cwsphfjhlndac69nl5m90swwlml3uhmvsgnwtdm067l4tdds048trk0gzj6prntrp6fvgqzz53g2r59gryqzqaqfun4pv89ejgf6qpf5y5sv2yqryz2aydgky8ya2js8myvvl6aa005vmcz9exnl6eec92ad7wjff7x6dkcl24rkyq0r6e5un4k4g78a3ku9nnhm57gt39xy5kh7hrjruffp99e7u7r7mpm40tehq223nlfduk43cpl90c9xjyxcx3a4s4jvrewnx6z89cm53mlvrmcvj2eel53zfxwy4ck5ku92004xv032hcw5mmf84equxnczm74nhghvwpak5km2uams7wegy4zpas6e3y6mf0dapgm463acf0esf0pax3xf200mxz4dh8elu843k4aaz3r02mfmxcd2542nxy06e0yfml82y22ku9q6jjlvn5pv86jul8z6e6um4lvrkx4edp3tmjajyvmtv3wszauwdlnr0h02y3ssnrmkzapwwkvn9qe4fh6ck5c2mknnmp0exujth9af2pltlwe56weh2hkx3theclc4ev7ek4zj8ve09uferwfy5t57kpngmphhrv2rqe23gjlh658jcd2up7km579axccnf66v02met9fc2vl34lej8lahu76evr4vtdxx0842nsg3nrxa5m09p9tc3slvm64da0hjhm22uwseded0ejea58k6nqx6c2j2zxm02lxzetfe7en4sctfanvht9fzcxdxtp2s9yklmay4u3rg4cmhpa4vvwfd7f8xecl6shth689m5hzedvh0afuslfc8ywflwpj5h2rztfzl2qnelaqrtrz7lnuaul6jlhlnfszsy3g0zs",
    "success": true,
    "trade_record": {
        "accepted_at_time": 1697314416,
        "coins_of_interest": [
            {
                "amount": 1,
                "parent_coin_info": "0x0d3f3ad6fd4396431d650df80cb788ace16c5bc33b8e4b55bad331c55b86a176",
                "puzzle_hash": "0x42bf3fbcef335ae1b472617881a41be201e42586ba9cbf9edb302232fbdc8521"
            },
            {
                "amount": 1,
                "parent_coin_info": "0x74f456c2e9ba6d16d147342ce3aaea7dacb7c083c38fd6925b941a6110d60ca2",
                "puzzle_hash": "0x303377f169f31b16de5678ffe56cda2cc5a3934ae3d8f511a2345085961fc59f"
            },
            {
                "amount": 484569999,
                "parent_coin_info": "0x5709270d7da9475450aeb13094ec7bb0da366fe19d32da91a6ddb292b35888d7",
                "puzzle_hash": "0x15b9a0f7c9b5ac5f5e16c5a19e0fed8c4d9eb62b4aa4c02481d211ee5ce5d5ec"
            },
            {
                "amount": 50000,
                "parent_coin_info": "0x96c8e6d160efebc60d80d0948fae79ced22d041237e42a6f963dc50812708b0f",
                "puzzle_hash": "0xc235f044ca050bb8a36b4cd707e39ee613ecf3db322be9e4f91650714c3bd8da"
            },
            {
                "amount": 50000,
                "parent_coin_info": "0xb5bcbf0b59ed0e59e348737a1dd9b2424d981414591946f450e5dd87f7687fd1",
                "puzzle_hash": "0xc235f044ca050bb8a36b4cd707e39ee613ecf3db322be9e4f91650714c3bd8da"
            },
            {
                "amount": 50000,
                "parent_coin_info": "0x5d8a97d73cc960f30d52e110110313372cb8ccf3558eda2328c14ed07ed248f7",
                "puzzle_hash": "0xc235f044ca050bb8a36b4cd707e39ee613ecf3db322be9e4f91650714c3bd8da"
            },
            {
                "amount": 50000,
                "parent_coin_info": "0x0edbe307d1eaa72e81a2a4b5a9a09590c0c60ca21ea97178d8d8449b014c1a81",
                "puzzle_hash": "0xc235f044ca050bb8a36b4cd707e39ee613ecf3db322be9e4f91650714c3bd8da"
            },
            {
                "amount": 2500000,
                "parent_coin_info": "0x269c4db7d202d711c5d427c65bd3fd479c7c544349425cf49141de02febfb26c",
                "puzzle_hash": "0x4a93e035605d233c476fdbbe02bc72f4770de38d1b9d63526e616b99887980ea"
            },
            {
                "amount": 50000,
                "parent_coin_info": "0xe5575f23f8ebc76739605434e44cf9d97fbaff8458e9ffc220349ddb9a863be1",
                "puzzle_hash": "0xc235f044ca050bb8a36b4cd707e39ee613ecf3db322be9e4f91650714c3bd8da"
            },
            {
                "amount": 1000000,
                "parent_coin_info": "0xeae1e9b7652218b1c1402b5f1b7674784ea64de1b2d9e9f3dfdcaae06e71abb9",
                "puzzle_hash": "0x4ef62244889cce7adaf1afe99c4ed58ac1ca5c5d7763388f136f670710e8a90f"
            },
            {
                "amount": 50000,
                "parent_coin_info": "0xea716fe7525fe3250128d1ad784bd34c1d0d6489a4a21d211bb7ca54bc3faba7",
                "puzzle_hash": "0xc235f044ca050bb8a36b4cd707e39ee613ecf3db322be9e4f91650714c3bd8da"
            },
            {
                "amount": 50000,
                "parent_coin_info": "0x1b48cadfe8b064b7c9a0883ff73d3a21d7f51ba94db2898efa5b6002cfd01b3e",
                "puzzle_hash": "0xc235f044ca050bb8a36b4cd707e39ee613ecf3db322be9e4f91650714c3bd8da"
            },
            {
                "amount": 50000,
                "parent_coin_info": "0x7a2808b2574251229b9e5690d5feebf570db9dda175361a5cb73764a014f6488",
                "puzzle_hash": "0xc235f044ca050bb8a36b4cd707e39ee613ecf3db322be9e4f91650714c3bd8da"
            },
            {
                "amount": 50000,
                "parent_coin_info": "0x9c20077b9891837c13fcf2f2e6ee4251c39ff05a8bcac095b05ff12bc44761ca",
                "puzzle_hash": "0xc235f044ca050bb8a36b4cd707e39ee613ecf3db322be9e4f91650714c3bd8da"
            },
            {
                "amount": 50000,
                "parent_coin_info": "0x87d0282ac94c28e0b2c7d2055db6ca29cef895def13442e584c6a2b6980b269e",
                "puzzle_hash": "0xc235f044ca050bb8a36b4cd707e39ee613ecf3db322be9e4f91650714c3bd8da"
            },
            {
                "amount": 50000,
                "parent_coin_info": "0x2bcf295a0fe6cd48489c902f620847517a2a035658a9d237f0c14a2e4e1ed477",
                "puzzle_hash": "0xc235f044ca050bb8a36b4cd707e39ee613ecf3db322be9e4f91650714c3bd8da"
            },
            {
                "amount": 50000,
                "parent_coin_info": "0x26a11eea8059983457f8988e4d5aba8dcfc38d5ccb7f62258bb787d52f244d2f",
                "puzzle_hash": "0xc235f044ca050bb8a36b4cd707e39ee613ecf3db322be9e4f91650714c3bd8da"
            },
            {
                "amount": 50000,
                "parent_coin_info": "0x4ba2f76aed77f53561b9159b4c13720d5b5579bcc30379cd61c7d4a4769235ee",
                "puzzle_hash": "0xc235f044ca050bb8a36b4cd707e39ee613ecf3db322be9e4f91650714c3bd8da"
            },
            {
                "amount": 50000,
                "parent_coin_info": "0x1ba1bee19da04a946efdcfef6d4086f6df1f0ce2922c0d446dce35bf3054c084",
                "puzzle_hash": "0xc235f044ca050bb8a36b4cd707e39ee613ecf3db322be9e4f91650714c3bd8da"
            }
        ],
        "confirmed_at_index": 0,
        "created_at_time": 1697314416,
        "is_my_offer": false,
        "pending": {
            "b44696ee583884564aa781b4879c507b31c4cca103e57fc1113321b3724b76cb": 1
        },
        "sent": 0,
        "sent_to": [],
        "status": "CANCELLED",
        "summary": {
            "fees": 0,
            "infos": {
                "39d46fe8360810b1c46a021df0604398feb70f93beb2c2d5294b4b9d579424fa": {
                    "also": {
                        "also": {
                            "owner": "()",
                            "transfer_program": {
                                "launcher_id": "0x39d46fe8360810b1c46a021df0604398feb70f93beb2c2d5294b4b9d579424fa",
                                "royalty_address": "0x2d404827b62bc3d78eb7a0d54d3317a7f1c241b502cf34697e30bd2546e0df22",
                                "royalty_percentage": "450",
                                "type": "royalty transfer program"
                            },
                            "type": "ownership"
                        },
                        "metadata": "0xffff75ffc0a568747470733a2f2f6261667962656966797a646a676d71736e6c673774656f35637061736b6a346e68696e6e63697933687071366c6272676e627777707362637165712e697066732e6e667473746f726167652e6c696e6b2f697066732f6261667962656966797a646a676d71736e6c673774656f35637061736b6a346e68696e6e63697933687071366c6272676e627777707362637165712f33302d313035382e706e6780ffff68a092315b62e246cdb07d7fb792c4dc8d5842de8291c2da654ef7ca860bef636aa8ffff826d75ffc0a668747470733a2f2f62616679626569627063716c77636137796476646668646571696a6334626f7732337932666f73356964746d6a32636b7668766f6e7634696669612e697066732e6e667473746f726167652e6c696e6b2f697066732f62616679626569627063716c77636137796476646668646571696a6334626f7732337932666f73356964746d6a32636b7668766f6e7634696669612f33302d313035382e6a736f6e80ffff826c75ffc06468747470733a2f2f62616679626569616c746372663734346e336e7278367972793372746b766d796f65786366687837376564677933767662667276623772673435692e697066732e6e667473746f726167652e6c696e6b2f4c6963656e73652e70646680ffff82736e01ffff82737401ffff826d68a0da71f2e9a5960eb77234be3e93001d6edf1de7f6750c00f6cb192c32a10e8f2cffff826c68a0bfd541639533a2bd07d7b9d0674069b9e03d3085acc34576684da6fa6b6edc2c80",
                        "type": "metadata",
                        "updater_hash": "0xfe8a4b4e27a2e29a4d3fc7ce9d527adbcaccbab6ada3903ccf3ba9a769d2d78b"
                    },
                    "launcher_id": "0x39d46fe8360810b1c46a021df0604398feb70f93beb2c2d5294b4b9d579424fa",
                    "launcher_ph": "0xeff07522495060c066f66f32acc2a77e3a3e737aca8baea4d1a64ea4cdc13da9",
                    "type": "singleton"
                },
                "446f5c3532929f71fa82f1c65f7e93170dcfbf8d59baf82a81b6f8e8f85e8a5c": {
                    "tail": "0x446f5c3532929f71fa82f1c65f7e93170dcfbf8d59baf82a81b6f8e8f85e8a5c",
                    "type": "CAT"
                },
                "b44696ee583884564aa781b4879c507b31c4cca103e57fc1113321b3724b76cb": {
                    "also": {
                        "also": {
                            "owner": "0xe39df6efd1491ba858880fe40710f378ad68d02b847c4b8e7a21506004067036",
                            "transfer_program": {
                                "launcher_id": "0xb44696ee583884564aa781b4879c507b31c4cca103e57fc1113321b3724b76cb",
                                "royalty_address": "0x2d404827b62bc3d78eb7a0d54d3317a7f1c241b502cf34697e30bd2546e0df22",
                                "royalty_percentage": "450",
                                "type": "royalty transfer program"
                            },
                            "type": "ownership"
                        },
                        "metadata": "0xffff75ffc0a568747470733a2f2f6261667962656964766c7979746d6466377468707665696a62376e37757a78756e676b796472686767326563647a7971336275646932686f777a752e697066732e6e667473746f726167652e6c696e6b2f697066732f6261667962656964766c7979746d6466377468707665696a62376e37757a78756e676b796472686767326563647a7971336275646932686f777a752f35302d313232342e706e6780ffff68a01a66f01be938df3f62392e198e61f919d01b694f4bf3b1e31ee391ef03e3b71dffff826d75ffc0a668747470733a2f2f6261667962656964766877343235636a64736a717a6e66646671766364617a7177367034787a637273666d726971636f6c32776c7372377a6d65792e697066732e6e667473746f726167652e6c696e6b2f697066732f6261667962656964766877343235636a64736a717a6e66646671766364617a7177367034787a637273666d726971636f6c32776c7372377a6d65792f35302d313232342e6a736f6e80ffff826c75ffc06468747470733a2f2f62616679626569616c746372663734346e336e7278367972793372746b766d796f65786366687837376564677933767662667276623772673435692e697066732e6e667473746f726167652e6c696e6b2f4c6963656e73652e70646680ffff82736e01ffff82737401ffff826d68a0bdd23d1a2f0c25209d8fe0978be327365876861318170c8580e3ed8e3b25af26ffff826c68a0bfd541639533a2bd07d7b9d0674069b9e03d3085acc34576684da6fa6b6edc2c80",
                        "type": "metadata",
                        "updater_hash": "0xfe8a4b4e27a2e29a4d3fc7ce9d527adbcaccbab6ada3903ccf3ba9a769d2d78b"
                    },
                    "launcher_id": "0xb44696ee583884564aa781b4879c507b31c4cca103e57fc1113321b3724b76cb",
                    "launcher_ph": "0xeff07522495060c066f66f32acc2a77e3a3e737aca8baea4d1a64ea4cdc13da9",
                    "type": "singleton"
                }
            },
            "offered": {
                "b44696ee583884564aa781b4879c507b31c4cca103e57fc1113321b3724b76cb": 1
            },
            "requested": {
                "39d46fe8360810b1c46a021df0604398feb70f93beb2c2d5294b4b9d579424fa": 1,
                "446f5c3532929f71fa82f1c65f7e93170dcfbf8d59baf82a81b6f8e8f85e8a5c": 4000000
            }
        },
        "taken_offer": "0x0000000300000000000000000000000000000000000000000000000000000000000000005128d832a25fe7495fcac5860cb16a75ca2727afb9147de8da4c0a43a6e5208f0000000000000000ff02ffff01ff02ffff01ff02ffff03ffff18ff2fff3480ffff01ff04ffff04ff20ffff04ff2fff808080ffff04ffff02ff3effff04ff02ffff04ff05ffff04ffff02ff2affff04ff02ffff04ff27ffff04ffff02ffff03ff77ffff01ff02ff36ffff04ff02ffff04ff09ffff04ff57ffff04ffff02ff2effff04ff02ffff04ff05ff80808080ff808080808080ffff011d80ff0180ffff04ffff02ffff03ff77ffff0181b7ffff015780ff0180ff808080808080ffff04ff77ff808080808080ffff02ff3affff04ff02ffff04ff05ffff04ffff02ff0bff5f80ffff01ff8080808080808080ffff01ff088080ff0180ffff04ffff01ffffffff4947ff0233ffff0401ff0102ffffff20ff02ffff03ff05ffff01ff02ff32ffff04ff02ffff04ff0dffff04ffff0bff3cffff0bff34ff2480ffff0bff3cffff0bff3cffff0bff34ff2c80ff0980ffff0bff3cff0bffff0bff34ff8080808080ff8080808080ffff010b80ff0180ffff02ffff03ffff22ffff09ffff0dff0580ff2280ffff09ffff0dff0b80ff2280ffff15ff17ffff0181ff8080ffff01ff0bff05ff0bff1780ffff01ff088080ff0180ff02ffff03ff0bffff01ff02ffff03ffff02ff26ffff04ff02ffff04ff13ff80808080ffff01ff02ffff03ffff20ff1780ffff01ff02ffff03ffff09ff81b3ffff01818f80ffff01ff02ff3affff04ff02ffff04ff05ffff04ff1bffff04ff34ff808080808080ffff01ff04ffff04ff23ffff04ffff02ff36ffff04ff02ffff04ff09ffff04ff53ffff04ffff02ff2effff04ff02ffff04ff05ff80808080ff808080808080ff738080ffff02ff3affff04ff02ffff04ff05ffff04ff1bffff04ff34ff8080808080808080ff0180ffff01ff088080ff0180ffff01ff04ff13ffff02ff3affff04ff02ffff04ff05ffff04ff1bffff04ff17ff8080808080808080ff0180ffff01ff02ffff03ff17ff80ffff01ff088080ff018080ff0180ffffff02ffff03ffff09ff09ff3880ffff01ff02ffff03ffff18ff2dffff010180ffff01ff0101ff8080ff0180ff8080ff0180ff0bff3cffff0bff34ff2880ffff0bff3cffff0bff3cffff0bff34ff2c80ff0580ffff0bff3cffff02ff32ffff04ff02ffff04ff07ffff04ffff0bff34ff3480ff8080808080ffff0bff34ff8080808080ffff02ffff03ffff07ff0580ffff01ff0bffff0102ffff02ff2effff04ff02ffff04ff09ff80808080ffff02ff2effff04ff02ffff04ff0dff8080808080ffff01ff0bffff0101ff058080ff0180ff02ffff03ffff21ff17ffff09ff0bff158080ffff01ff04ff30ffff04ff0bff808080ffff01ff088080ff0180ff018080ffff04ffff01ffa07faa3253bfddd1e0decb0906b2dc6247bbc4cf608f58345d173adb63e8b47c9fffa039d46fe8360810b1c46a021df0604398feb70f93beb2c2d5294b4b9d579424faa0eff07522495060c066f66f32acc2a77e3a3e737aca8baea4d1a64ea4cdc13da9ffff04ffff01ff02ffff01ff02ffff01ff02ff3effff04ff02ffff04ff05ffff04ffff02ff2fff5f80ffff04ff80ffff04ffff04ffff04ff0bffff04ff17ff808080ffff01ff808080ffff01ff8080808080808080ffff04ffff01ffffff0233ff04ff0101ffff02ff02ffff03ff05ffff01ff02ff1affff04ff02ffff04ff0dffff04ffff0bff12ffff0bff2cff1480ffff0bff12ffff0bff12ffff0bff2cff3c80ff0980ffff0bff12ff0bffff0bff2cff8080808080ff8080808080ffff010b80ff0180ffff0bff12ffff0bff2cff1080ffff0bff12ffff0bff12ffff0bff2cff3c80ff0580ffff0bff12ffff02ff1affff04ff02ffff04ff07ffff04ffff0bff2cff2c80ff8080808080ffff0bff2cff8080808080ffff02ffff03ffff07ff0580ffff01ff0bffff0102ffff02ff2effff04ff02ffff04ff09ff80808080ffff02ff2effff04ff02ffff04ff0dff8080808080ffff01ff0bffff0101ff058080ff0180ff02ffff03ff0bffff01ff02ffff03ffff09ff23ff1880ffff01ff02ffff03ffff18ff81b3ff2c80ffff01ff02ffff03ffff20ff1780ffff01ff02ff3effff04ff02ffff04ff05ffff04ff1bffff04ff33ffff04ff2fffff04ff5fff8080808080808080ffff01ff088080ff0180ffff01ff04ff13ffff02ff3effff04ff02ffff04ff05ffff04ff1bffff04ff17ffff04ff2fffff04ff5fff80808080808080808080ff0180ffff01ff02ffff03ffff09ff23ffff0181e880ffff01ff02ff3effff04ff02ffff04ff05ffff04ff1bffff04ff17ffff04ffff02ffff03ffff22ffff09ffff02ff2effff04ff02ffff04ff53ff80808080ff82014f80ffff20ff5f8080ffff01ff02ff53ffff04ff818fffff04ff82014fffff04ff81b3ff8080808080ffff01ff088080ff0180ffff04ff2cff8080808080808080ffff01ff04ff13ffff02ff3effff04ff02ffff04ff05ffff04ff1bffff04ff17ffff04ff2fffff04ff5fff80808080808080808080ff018080ff0180ffff01ff04ffff04ff18ffff04ffff02ff16ffff04ff02ffff04ff05ffff04ff27ffff04ffff0bff2cff82014f80ffff04ffff02ff2effff04ff02ffff04ff818fff80808080ffff04ffff0bff2cff0580ff8080808080808080ff378080ff81af8080ff0180ff018080ffff04ffff01a0a04d9f57764f54a43e4030befb4d80026e870519aaa66334aef8304f5d0393c2ffff04ffff01ffff75ffc0a568747470733a2f2f6261667962656966797a646a676d71736e6c673774656f35637061736b6a346e68696e6e63697933687071366c6272676e627777707362637165712e697066732e6e667473746f726167652e6c696e6b2f697066732f6261667962656966797a646a676d71736e6c673774656f35637061736b6a346e68696e6e63697933687071366c6272676e627777707362637165712f33302d313035382e706e6780ffff68a092315b62e246cdb07d7fb792c4dc8d5842de8291c2da654ef7ca860bef636aa8ffff826d75ffc0a668747470733a2f2f62616679626569627063716c77636137796476646668646571696a6334626f7732337932666f73356964746d6a32636b7668766f6e7634696669612e697066732e6e667473746f726167652e6c696e6b2f697066732f62616679626569627063716c77636137796476646668646571696a6334626f7732337932666f73356964746d6a32636b7668766f6e7634696669612f33302d313035382e6a736f6e80ffff826c75ffc06468747470733a2f2f62616679626569616c746372663734346e336e7278367972793372746b766d796f65786366687837376564677933767662667276623772673435692e697066732e6e667473746f726167652e6c696e6b2f4c6963656e73652e70646680ffff82736e01ffff82737401ffff826d68a0da71f2e9a5960eb77234be3e93001d6edf1de7f6750c00f6cb192c32a10e8f2cffff826c68a0bfd541639533a2bd07d7b9d0674069b9e03d3085acc34576684da6fa6b6edc2c80ffff04ffff01a0fe8a4b4e27a2e29a4d3fc7ce9d527adbcaccbab6ada3903ccf3ba9a769d2d78bffff04ffff01ff02ffff01ff02ffff01ff02ff26ffff04ff02ffff04ff05ffff04ff17ffff04ff0bffff04ffff02ff2fff5f80ff80808080808080ffff04ffff01ffffff82ad4cff0233ffff3e04ff81f601ffffff0102ffff02ffff03ff05ffff01ff02ff2affff04ff02ffff04ff0dffff04ffff0bff32ffff0bff3cff3480ffff0bff32ffff0bff32ffff0bff3cff2280ff0980ffff0bff32ff0bffff0bff3cff8080808080ff8080808080ffff010b80ff0180ff04ffff04ff38ffff04ffff02ff36ffff04ff02ffff04ff05ffff04ff27ffff04ffff02ff2effff04ff02ffff04ffff02ffff03ff81afffff0181afffff010b80ff0180ff80808080ffff04ffff0bff3cff4f80ffff04ffff0bff3cff0580ff8080808080808080ff378080ff82016f80ffffff02ff3effff04ff02ffff04ff05ffff04ff0bffff04ff17ffff04ff2fffff04ff2fffff01ff80ff808080808080808080ff0bff32ffff0bff3cff2880ffff0bff32ffff0bff32ffff0bff3cff2280ff0580ffff0bff32ffff02ff2affff04ff02ffff04ff07ffff04ffff0bff3cff3c80ff8080808080ffff0bff3cff8080808080ffff02ffff03ffff07ff0580ffff01ff0bffff0102ffff02ff2effff04ff02ffff04ff09ff80808080ffff02ff2effff04ff02ffff04ff0dff8080808080ffff01ff0bffff0101ff058080ff0180ff02ffff03ff5fffff01ff02ffff03ffff09ff82011fff3880ffff01ff02ffff03ffff09ffff18ff82059f80ff3c80ffff01ff02ffff03ffff20ff81bf80ffff01ff02ff3effff04ff02ffff04ff05ffff04ff0bffff04ff17ffff04ff2fffff04ff81dfffff04ff82019fffff04ff82017fff80808080808080808080ffff01ff088080ff0180ffff01ff04ff819fffff02ff3effff04ff02ffff04ff05ffff04ff0bffff04ff17ffff04ff2fffff04ff81dfffff04ff81bfffff04ff82017fff808080808080808080808080ff0180ffff01ff02ffff03ffff09ff82011fff2c80ffff01ff02ffff03ffff20ff82017f80ffff01ff04ffff04ff24ffff04ffff0eff10ffff02ff2effff04ff02ffff04ff82019fff8080808080ff808080ffff02ff3effff04ff02ffff04ff05ffff04ff0bffff04ff17ffff04ff2fffff04ff81dfffff04ff81bfffff04ffff02ff0bffff04ff17ffff04ff2fffff04ff82019fff8080808080ff8080808080808080808080ffff01ff088080ff0180ffff01ff02ffff03ffff09ff82011fff2480ffff01ff02ffff03ffff20ffff02ffff03ffff09ffff0122ffff0dff82029f8080ffff01ff02ffff03ffff09ffff0cff82029fff80ffff010280ff1080ffff01ff0101ff8080ff0180ff8080ff018080ffff01ff04ff819fffff02ff3effff04ff02ffff04ff05ffff04ff0bffff04ff17ffff04ff2fffff04ff81dfffff04ff81bfffff04ff82017fff8080808080808080808080ffff01ff088080ff0180ffff01ff04ff819fffff02ff3effff04ff02ffff04ff05ffff04ff0bffff04ff17ffff04ff2fffff04ff81dfffff04ff81bfffff04ff82017fff808080808080808080808080ff018080ff018080ff0180ffff01ff02ff3affff04ff02ffff04ff05ffff04ff0bffff04ff81bfffff04ffff02ffff03ff82017fffff0182017fffff01ff02ff0bffff04ff17ffff04ff2fffff01ff808080808080ff0180ff8080808080808080ff0180ff018080ffff04ffff01a0c5abea79afaa001b5427dfa0c8cf42ca6f38f5841b78f9b3c252733eb2de2726ffff04ffff0180ffff04ffff01ff02ffff01ff02ffff01ff02ffff03ff81bfffff01ff04ff82013fffff04ff80ffff04ffff02ffff03ffff22ff82013fffff20ffff09ff82013fff2f808080ffff01ff04ffff04ff10ffff04ffff0bffff02ff2effff04ff02ffff04ff09ffff04ff8205bfffff04ffff02ff3effff04ff02ffff04ffff04ff09ffff04ff82013fff1d8080ff80808080ff808080808080ff1580ff808080ffff02ff16ffff04ff02ffff04ff0bffff04ff17ffff04ff8202bfffff04ff15ff8080808080808080ffff01ff02ff16ffff04ff02ffff04ff0bffff04ff17ffff04ff8202bfffff04ff15ff8080808080808080ff0180ff80808080ffff01ff04ff2fffff01ff80ff80808080ff0180ffff04ffff01ffffff3f02ff04ff0101ffff822710ff02ff02ffff03ff05ffff01ff02ff3affff04ff02ffff04ff0dffff04ffff0bff2affff0bff2cff1480ffff0bff2affff0bff2affff0bff2cff3c80ff0980ffff0bff2aff0bffff0bff2cff8080808080ff8080808080ffff010b80ff0180ffff02ffff03ff17ffff01ff04ffff04ff10ffff04ffff0bff81a7ffff02ff3effff04ff02ffff04ffff04ff2fffff04ffff04ff05ffff04ffff05ffff14ffff12ff47ff0b80ff128080ffff04ffff04ff05ff8080ff80808080ff808080ff8080808080ff808080ffff02ff16ffff04ff02ffff04ff05ffff04ff0bffff04ff37ffff04ff2fff8080808080808080ff8080ff0180ffff0bff2affff0bff2cff1880ffff0bff2affff0bff2affff0bff2cff3c80ff0580ffff0bff2affff02ff3affff04ff02ffff04ff07ffff04ffff0bff2cff2c80ff8080808080ffff0bff2cff8080808080ff02ffff03ffff07ff0580ffff01ff0bffff0102ffff02ff3effff04ff02ffff04ff09ff80808080ffff02ff3effff04ff02ffff04ff0dff8080808080ffff01ff0bffff0101ff058080ff0180ff018080ffff04ffff01ffa07faa3253bfddd1e0decb0906b2dc6247bbc4cf608f58345d173adb63e8b47c9fffa039d46fe8360810b1c46a021df0604398feb70f93beb2c2d5294b4b9d579424faa0eff07522495060c066f66f32acc2a77e3a3e737aca8baea4d1a64ea4cdc13da9ffff04ffff01a02d404827b62bc3d78eb7a0d54d3317a7f1c241b502cf34697e30bd2546e0df22ffff04ffff018201c2ff0180808080ffff04ffff01ff02ffff01ff02ff0affff04ff02ffff04ff03ff80808080ffff04ffff01ffff333effff02ffff03ff05ffff01ff04ffff04ff0cffff04ffff02ff1effff04ff02ffff04ff09ff80808080ff808080ffff02ff16ffff04ff02ffff04ff19ffff04ffff02ff0affff04ff02ffff04ff0dff80808080ff808080808080ff8080ff0180ffff02ffff03ff05ffff01ff02ffff03ffff15ff29ff8080ffff01ff04ffff04ff08ff0980ffff02ff16ffff04ff02ffff04ff0dffff04ff0bff808080808080ffff01ff088080ff0180ffff010b80ff0180ff02ffff03ffff07ff0580ffff01ff0bffff0102ffff02ff1effff04ff02ffff04ff09ff80808080ffff02ff1effff04ff02ffff04ff0dff8080808080ffff01ff0bffff0101ff058080ff0180ff018080ff018080808080ff018080808080ff01808080ffffa0631a4a37e440a813c5369e43d1e5a9fddc0b8964ba561cb1418574d97b7596a0ffffa0e4cde0d4c56d2721248f09c269c23d139196fadbc8e4be93d10e6008008abfccff01ffffa0e4cde0d4c56d2721248f09c269c23d139196fadbc8e4be93d10e6008008abfcc808080800000000000000000000000000000000000000000000000000000000000000000e5b221b468a7627c113f69b38a24e6e0564c77f876161c978509e41a749646350000000000000000ff02ffff01ff02ffff01ff02ff5effff04ff02ffff04ffff04ff05ffff04ffff0bff34ff0580ffff04ff0bff80808080ffff04ffff02ff17ff2f80ffff04ff5fffff04ffff02ff2effff04ff02ffff04ff17ff80808080ffff04ffff02ff2affff04ff02ffff04ff82027fffff04ff82057fffff04ff820b7fff808080808080ffff04ff81bfffff04ff82017fffff04ff8202ffffff04ff8205ffffff04ff820bffff80808080808080808080808080ffff04ffff01ffffffff3d46ff02ff333cffff0401ff01ff81cb02ffffff20ff02ffff03ff05ffff01ff02ff32ffff04ff02ffff04ff0dffff04ffff0bff7cffff0bff34ff2480ffff0bff7cffff0bff7cffff0bff34ff2c80ff0980ffff0bff7cff0bffff0bff34ff8080808080ff8080808080ffff010b80ff0180ffff02ffff03ffff22ffff09ffff0dff0580ff2280ffff09ffff0dff0b80ff2280ffff15ff17ffff0181ff8080ffff01ff0bff05ff0bff1780ffff01ff088080ff0180ffff02ffff03ff0bffff01ff02ffff03ffff09ffff02ff2effff04ff02ffff04ff13ff80808080ff820b9f80ffff01ff02ff56ffff04ff02ffff04ffff02ff13ffff04ff5fffff04ff17ffff04ff2fffff04ff81bfffff04ff82017fffff04ff1bff8080808080808080ffff04ff82017fff8080808080ffff01ff088080ff0180ffff01ff02ffff03ff17ffff01ff02ffff03ffff20ff81bf80ffff0182017fffff01ff088080ff0180ffff01ff088080ff018080ff0180ff04ffff04ff05ff2780ffff04ffff10ff0bff5780ff778080ffffff02ffff03ff05ffff01ff02ffff03ffff09ffff02ffff03ffff09ff11ff5880ffff0159ff8080ff0180ffff01818f80ffff01ff02ff26ffff04ff02ffff04ff0dffff04ff0bffff04ffff04ff81b9ff82017980ff808080808080ffff01ff02ff7affff04ff02ffff04ffff02ffff03ffff09ff11ff5880ffff01ff04ff58ffff04ffff02ff76ffff04ff02ffff04ff13ffff04ff29ffff04ffff0bff34ff5b80ffff04ff2bff80808080808080ff398080ffff01ff02ffff03ffff09ff11ff7880ffff01ff02ffff03ffff20ffff02ffff03ffff09ffff0121ffff0dff298080ffff01ff02ffff03ffff09ffff0cff29ff80ff3480ff5c80ffff01ff0101ff8080ff0180ff8080ff018080ffff0109ffff01ff088080ff0180ffff010980ff018080ff0180ffff04ffff02ffff03ffff09ff11ff5880ffff0159ff8080ff0180ffff04ffff02ff26ffff04ff02ffff04ff0dffff04ff0bffff04ff17ff808080808080ff80808080808080ff0180ffff01ff04ff80ffff04ff80ff17808080ff0180ffff02ffff03ff05ffff01ff04ff09ffff02ff56ffff04ff02ffff04ff0dffff04ff0bff808080808080ffff010b80ff0180ff0bff7cffff0bff34ff2880ffff0bff7cffff0bff7cffff0bff34ff2c80ff0580ffff0bff7cffff02ff32ffff04ff02ffff04ff07ffff04ffff0bff34ff3480ff8080808080ffff0bff34ff8080808080ffff02ffff03ffff07ff0580ffff01ff0bffff0102ffff02ff2effff04ff02ffff04ff09ff80808080ffff02ff2effff04ff02ffff04ff0dff8080808080ffff01ff0bffff0101ff058080ff0180ffff04ffff04ff30ffff04ff5fff808080ffff02ff7effff04ff02ffff04ffff04ffff04ff2fff0580ffff04ff5fff82017f8080ffff04ffff02ff26ffff04ff02ffff04ff0bffff04ff05ffff01ff808080808080ffff04ff17ffff04ff81bfffff04ff82017fffff04ffff02ff2affff04ff02ffff04ff8204ffffff04ffff02ff76ffff04ff02ffff04ff09ffff04ff820affffff04ffff0bff34ff2d80ffff04ff15ff80808080808080ffff04ff8216ffff808080808080ffff04ff8205ffffff04ff820bffff808080808080808080808080ff02ff5affff04ff02ffff04ff5fffff04ff3bffff04ffff02ffff03ff17ffff01ff09ff2dffff02ff2affff04ff02ffff04ff27ffff04ffff02ff76ffff04ff02ffff04ff29ffff04ff57ffff04ffff0bff34ff81b980ffff04ff59ff80808080808080ffff04ff81b7ff80808080808080ff8080ff0180ffff04ff17ffff04ff05ffff04ff8202ffffff04ffff04ffff04ff78ffff04ffff0eff5cffff02ff2effff04ff02ffff04ffff04ff2fffff04ff82017fff808080ff8080808080ff808080ffff04ffff04ff20ffff04ffff0bff81bfff5cffff02ff2effff04ff02ffff04ffff04ff15ffff04ffff10ff82017fffff11ff8202dfff2b80ff8202ff80ff808080ff8080808080ff808080ff138080ff80808080808080808080ff018080ffff04ffff01a037bef360ee858133b69d595a906dc45d01af50379dad515eb9518abb7c1d2a7affff04ffff01a0446f5c3532929f71fa82f1c65f7e93170dcfbf8d59baf82a81b6f8e8f85e8a5cffff04ffff01ff02ffff01ff02ff0affff04ff02ffff04ff03ff80808080ffff04ffff01ffff333effff02ffff03ff05ffff01ff04ffff04ff0cffff04ffff02ff1effff04ff02ffff04ff09ff80808080ff808080ffff02ff16ffff04ff02ffff04ff19ffff04ffff02ff0affff04ff02ffff04ff0dff80808080ff808080808080ff8080ff0180ffff02ffff03ff05ffff01ff02ffff03ffff15ff29ff8080ffff01ff04ffff04ff08ff0980ffff02ff16ffff04ff02ffff04ff0dffff04ff0bff808080808080ffff01ff088080ff0180ffff010b80ff0180ff02ffff03ffff07ff0580ffff01ff0bffff0102ffff02ff1effff04ff02ffff04ff09ff80808080ffff02ff1effff04ff02ffff04ff0dff8080808080ffff01ff0bffff0101ff058080ff0180ff018080ff0180808080ffffa0631a4a37e440a813c5369e43d1e5a9fddc0b8964ba561cb1418574d97b7596a0ffffa0e4cde0d4c56d2721248f09c269c23d139196fadbc8e4be93d10e6008008abfccff833d0900ffffa0e4cde0d4c56d2721248f09c269c23d139196fadbc8e4be93d10e6008008abfcc808080800d3f3ad6fd4396431d650df80cb788ace16c5bc33b8e4b55bad331c55b86a17642bf3fbcef335ae1b472617881a41be201e42586ba9cbf9edb302232fbdc85210000000000000001ff02ffff01ff02ffff01ff02ffff03ffff18ff2fff3480ffff01ff04ffff04ff20ffff04ff2fff808080ffff04ffff02ff3effff04ff02ffff04ff05ffff04ffff02ff2affff04ff02ffff04ff27ffff04ffff02ffff03ff77ffff01ff02ff36ffff04ff02ffff04ff09ffff04ff57ffff04ffff02ff2effff04ff02ffff04ff05ff80808080ff808080808080ffff011d80ff0180ffff04ffff02ffff03ff77ffff0181b7ffff015780ff0180ff808080808080ffff04ff77ff808080808080ffff02ff3affff04ff02ffff04ff05ffff04ffff02ff0bff5f80ffff01ff8080808080808080ffff01ff088080ff0180ffff04ffff01ffffffff4947ff0233ffff0401ff0102ffffff20ff02ffff03ff05ffff01ff02ff32ffff04ff02ffff04ff0dffff04ffff0bff3cffff0bff34ff2480ffff0bff3cffff0bff3cffff0bff34ff2c80ff0980ffff0bff3cff0bffff0bff34ff8080808080ff8080808080ffff010b80ff0180ffff02ffff03ffff22ffff09ffff0dff0580ff2280ffff09ffff0dff0b80ff2280ffff15ff17ffff0181ff8080ffff01ff0bff05ff0bff1780ffff01ff088080ff0180ff02ffff03ff0bffff01ff02ffff03ffff02ff26ffff04ff02ffff04ff13ff80808080ffff01ff02ffff03ffff20ff1780ffff01ff02ffff03ffff09ff81b3ffff01818f80ffff01ff02ff3affff04ff02ffff04ff05ffff04ff1bffff04ff34ff808080808080ffff01ff04ffff04ff23ffff04ffff02ff36ffff04ff02ffff04ff09ffff04ff53ffff04ffff02ff2effff04ff02ffff04ff05ff80808080ff808080808080ff738080ffff02ff3affff04ff02ffff04ff05ffff04ff1bffff04ff34ff8080808080808080ff0180ffff01ff088080ff0180ffff01ff04ff13ffff02ff3affff04ff02ffff04ff05ffff04ff1bffff04ff17ff8080808080808080ff0180ffff01ff02ffff03ff17ff80ffff01ff088080ff018080ff0180ffffff02ffff03ffff09ff09ff3880ffff01ff02ffff03ffff18ff2dffff010180ffff01ff0101ff8080ff0180ff8080ff0180ff0bff3cffff0bff34ff2880ffff0bff3cffff0bff3cffff0bff34ff2c80ff0580ffff0bff3cffff02ff32ffff04ff02ffff04ff07ffff04ffff0bff34ff3480ff8080808080ffff0bff34ff8080808080ffff02ffff03ffff07ff0580ffff01ff0bffff0102ffff02ff2effff04ff02ffff04ff09ff80808080ffff02ff2effff04ff02ffff04ff0dff8080808080ffff01ff0bffff0101ff058080ff0180ff02ffff03ffff21ff17ffff09ff0bff158080ffff01ff04ff30ffff04ff0bff808080ffff01ff088080ff0180ff018080ffff04ffff01ffa07faa3253bfddd1e0decb0906b2dc6247bbc4cf608f58345d173adb63e8b47c9fffa0b44696ee583884564aa781b4879c507b31c4cca103e57fc1113321b3724b76cba0eff07522495060c066f66f32acc2a77e3a3e737aca8baea4d1a64ea4cdc13da9ffff04ffff01ff02ffff01ff02ffff01ff02ff3effff04ff02ffff04ff05ffff04ffff02ff2fff5f80ffff04ff80ffff04ffff04ffff04ff0bffff04ff17ff808080ffff01ff808080ffff01ff8080808080808080ffff04ffff01ffffff0233ff04ff0101ffff02ff02ffff03ff05ffff01ff02ff1affff04ff02ffff04ff0dffff04ffff0bff12ffff0bff2cff1480ffff0bff12ffff0bff12ffff0bff2cff3c80ff0980ffff0bff12ff0bffff0bff2cff8080808080ff8080808080ffff010b80ff0180ffff0bff12ffff0bff2cff1080ffff0bff12ffff0bff12ffff0bff2cff3c80ff0580ffff0bff12ffff02ff1affff04ff02ffff04ff07ffff04ffff0bff2cff2c80ff8080808080ffff0bff2cff8080808080ffff02ffff03ffff07ff0580ffff01ff0bffff0102ffff02ff2effff04ff02ffff04ff09ff80808080ffff02ff2effff04ff02ffff04ff0dff8080808080ffff01ff0bffff0101ff058080ff0180ff02ffff03ff0bffff01ff02ffff03ffff09ff23ff1880ffff01ff02ffff03ffff18ff81b3ff2c80ffff01ff02ffff03ffff20ff1780ffff01ff02ff3effff04ff02ffff04ff05ffff04ff1bffff04ff33ffff04ff2fffff04ff5fff8080808080808080ffff01ff088080ff0180ffff01ff04ff13ffff02ff3effff04ff02ffff04ff05ffff04ff1bffff04ff17ffff04ff2fffff04ff5fff80808080808080808080ff0180ffff01ff02ffff03ffff09ff23ffff0181e880ffff01ff02ff3effff04ff02ffff04ff05ffff04ff1bffff04ff17ffff04ffff02ffff03ffff22ffff09ffff02ff2effff04ff02ffff04ff53ff80808080ff82014f80ffff20ff5f8080ffff01ff02ff53ffff04ff818fffff04ff82014fffff04ff81b3ff8080808080ffff01ff088080ff0180ffff04ff2cff8080808080808080ffff01ff04ff13ffff02ff3effff04ff02ffff04ff05ffff04ff1bffff04ff17ffff04ff2fffff04ff5fff80808080808080808080ff018080ff0180ffff01ff04ffff04ff18ffff04ffff02ff16ffff04ff02ffff04ff05ffff04ff27ffff04ffff0bff2cff82014f80ffff04ffff02ff2effff04ff02ffff04ff818fff80808080ffff04ffff0bff2cff0580ff8080808080808080ff378080ff81af8080ff0180ff018080ffff04ffff01a0a04d9f57764f54a43e4030befb4d80026e870519aaa66334aef8304f5d0393c2ffff04ffff01ffff75ffc0a568747470733a2f2f6261667962656964766c7979746d6466377468707665696a62376e37757a78756e676b796472686767326563647a7971336275646932686f777a752e697066732e6e667473746f726167652e6c696e6b2f697066732f6261667962656964766c7979746d6466377468707665696a62376e37757a78756e676b796472686767326563647a7971336275646932686f777a752f35302d313232342e706e6780ffff68a01a66f01be938df3f62392e198e61f919d01b694f4bf3b1e31ee391ef03e3b71dffff826d75ffc0a668747470733a2f2f6261667962656964766877343235636a64736a717a6e66646671766364617a7177367034787a637273666d726971636f6c32776c7372377a6d65792e697066732e6e667473746f726167652e6c696e6b2f697066732f6261667962656964766877343235636a64736a717a6e66646671766364617a7177367034787a637273666d726971636f6c32776c7372377a6d65792f35302d313232342e6a736f6e80ffff826c75ffc06468747470733a2f2f62616679626569616c746372663734346e336e7278367972793372746b766d796f65786366687837376564677933767662667276623772673435692e697066732e6e667473746f726167652e6c696e6b2f4c6963656e73652e70646680ffff82736e01ffff82737401ffff826d68a0bdd23d1a2f0c25209d8fe0978be327365876861318170c8580e3ed8e3b25af26ffff826c68a0bfd541639533a2bd07d7b9d0674069b9e03d3085acc34576684da6fa6b6edc2c80ffff04ffff01a0fe8a4b4e27a2e29a4d3fc7ce9d527adbcaccbab6ada3903ccf3ba9a769d2d78bffff04ffff01ff02ffff01ff02ffff01ff02ff26ffff04ff02ffff04ff05ffff04ff17ffff04ff0bffff04ffff02ff2fff5f80ff80808080808080ffff04ffff01ffffff82ad4cff0233ffff3e04ff81f601ffffff0102ffff02ffff03ff05ffff01ff02ff2affff04ff02ffff04ff0dffff04ffff0bff32ffff0bff3cff3480ffff0bff32ffff0bff32ffff0bff3cff2280ff0980ffff0bff32ff0bffff0bff3cff8080808080ff8080808080ffff010b80ff0180ff04ffff04ff38ffff04ffff02ff36ffff04ff02ffff04ff05ffff04ff27ffff04ffff02ff2effff04ff02ffff04ffff02ffff03ff81afffff0181afffff010b80ff0180ff80808080ffff04ffff0bff3cff4f80ffff04ffff0bff3cff0580ff8080808080808080ff378080ff82016f80ffffff02ff3effff04ff02ffff04ff05ffff04ff0bffff04ff17ffff04ff2fffff04ff2fffff01ff80ff808080808080808080ff0bff32ffff0bff3cff2880ffff0bff32ffff0bff32ffff0bff3cff2280ff0580ffff0bff32ffff02ff2affff04ff02ffff04ff07ffff04ffff0bff3cff3c80ff8080808080ffff0bff3cff8080808080ffff02ffff03ffff07ff0580ffff01ff0bffff0102ffff02ff2effff04ff02ffff04ff09ff80808080ffff02ff2effff04ff02ffff04ff0dff8080808080ffff01ff0bffff0101ff058080ff0180ff02ffff03ff5fffff01ff02ffff03ffff09ff82011fff3880ffff01ff02ffff03ffff09ffff18ff82059f80ff3c80ffff01ff02ffff03ffff20ff81bf80ffff01ff02ff3effff04ff02ffff04ff05ffff04ff0bffff04ff17ffff04ff2fffff04ff81dfffff04ff82019fffff04ff82017fff80808080808080808080ffff01ff088080ff0180ffff01ff04ff819fffff02ff3effff04ff02ffff04ff05ffff04ff0bffff04ff17ffff04ff2fffff04ff81dfffff04ff81bfffff04ff82017fff808080808080808080808080ff0180ffff01ff02ffff03ffff09ff82011fff2c80ffff01ff02ffff03ffff20ff82017f80ffff01ff04ffff04ff24ffff04ffff0eff10ffff02ff2effff04ff02ffff04ff82019fff8080808080ff808080ffff02ff3effff04ff02ffff04ff05ffff04ff0bffff04ff17ffff04ff2fffff04ff81dfffff04ff81bfffff04ffff02ff0bffff04ff17ffff04ff2fffff04ff82019fff8080808080ff8080808080808080808080ffff01ff088080ff0180ffff01ff02ffff03ffff09ff82011fff2480ffff01ff02ffff03ffff20ffff02ffff03ffff09ffff0122ffff0dff82029f8080ffff01ff02ffff03ffff09ffff0cff82029fff80ffff010280ff1080ffff01ff0101ff8080ff0180ff8080ff018080ffff01ff04ff819fffff02ff3effff04ff02ffff04ff05ffff04ff0bffff04ff17ffff04ff2fffff04ff81dfffff04ff81bfffff04ff82017fff8080808080808080808080ffff01ff088080ff0180ffff01ff04ff819fffff02ff3effff04ff02ffff04ff05ffff04ff0bffff04ff17ffff04ff2fffff04ff81dfffff04ff81bfffff04ff82017fff808080808080808080808080ff018080ff018080ff0180ffff01ff02ff3affff04ff02ffff04ff05ffff04ff0bffff04ff81bfffff04ffff02ffff03ff82017fffff0182017fffff01ff02ff0bffff04ff17ffff04ff2fffff01ff808080808080ff0180ff8080808080808080ff0180ff018080ffff04ffff01a0c5abea79afaa001b5427dfa0c8cf42ca6f38f5841b78f9b3c252733eb2de2726ffff04ffff01a0e39df6efd1491ba858880fe40710f378ad68d02b847c4b8e7a21506004067036ffff04ffff01ff02ffff01ff02ffff01ff02ffff03ff81bfffff01ff04ff82013fffff04ff80ffff04ffff02ffff03ffff22ff82013fffff20ffff09ff82013fff2f808080ffff01ff04ffff04ff10ffff04ffff0bffff02ff2effff04ff02ffff04ff09ffff04ff8205bfffff04ffff02ff3effff04ff02ffff04ffff04ff09ffff04ff82013fff1d8080ff80808080ff808080808080ff1580ff808080ffff02ff16ffff04ff02ffff04ff0bffff04ff17ffff04ff8202bfffff04ff15ff8080808080808080ffff01ff02ff16ffff04ff02ffff04ff0bffff04ff17ffff04ff8202bfffff04ff15ff8080808080808080ff0180ff80808080ffff01ff04ff2fffff01ff80ff80808080ff0180ffff04ffff01ffffff3f02ff04ff0101ffff822710ff02ff02ffff03ff05ffff01ff02ff3affff04ff02ffff04ff0dffff04ffff0bff2affff0bff2cff1480ffff0bff2affff0bff2affff0bff2cff3c80ff0980ffff0bff2aff0bffff0bff2cff8080808080ff8080808080ffff010b80ff0180ffff02ffff03ff17ffff01ff04ffff04ff10ffff04ffff0bff81a7ffff02ff3effff04ff02ffff04ffff04ff2fffff04ffff04ff05ffff04ffff05ffff14ffff12ff47ff0b80ff128080ffff04ffff04ff05ff8080ff80808080ff808080ff8080808080ff808080ffff02ff16ffff04ff02ffff04ff05ffff04ff0bffff04ff37ffff04ff2fff8080808080808080ff8080ff0180ffff0bff2affff0bff2cff1880ffff0bff2affff0bff2affff0bff2cff3c80ff0580ffff0bff2affff02ff3affff04ff02ffff04ff07ffff04ffff0bff2cff2c80ff8080808080ffff0bff2cff8080808080ff02ffff03ffff07ff0580ffff01ff0bffff0102ffff02ff3effff04ff02ffff04ff09ff80808080ffff02ff3effff04ff02ffff04ff0dff8080808080ffff01ff0bffff0101ff058080ff0180ff018080ffff04ffff01ffa07faa3253bfddd1e0decb0906b2dc6247bbc4cf608f58345d173adb63e8b47c9fffa0b44696ee583884564aa781b4879c507b31c4cca103e57fc1113321b3724b76cba0eff07522495060c066f66f32acc2a77e3a3e737aca8baea4d1a64ea4cdc13da9ffff04ffff01a02d404827b62bc3d78eb7a0d54d3317a7f1c241b502cf34697e30bd2546e0df22ffff04ffff018201c2ff0180808080ffff04ffff01ff02ffff01ff02ffff01ff02ffff03ff0bffff01ff02ffff03ffff09ff05ffff1dff0bffff1effff0bff0bffff02ff06ffff04ff02ffff04ff17ff8080808080808080ffff01ff02ff17ff2f80ffff01ff088080ff0180ffff01ff04ffff04ff04ffff04ff05ffff04ffff02ff06ffff04ff02ffff04ff17ff80808080ff80808080ffff02ff17ff2f808080ff0180ffff04ffff01ff32ff02ffff03ffff07ff0580ffff01ff0bffff0102ffff02ff06ffff04ff02ffff04ff09ff80808080ffff02ff06ffff04ff02ffff04ff0dff8080808080ffff01ff0bffff0101ff058080ff0180ff018080ffff04ffff01b0979fef831d313f0166745f365e722231e8f30abbe227fba05067ad77617785709f1e017cdff71faa6b0238c41c4135e6ff018080ff018080808080ff018080808080ff01808080ffffa0b44696ee583884564aa781b4879c507b31c4cca103e57fc1113321b3724b76cbffa0b7da69f7bddec4747a106e5fa488bfe76bc7b7a729d037e19923165c54807138ff0180ff01ffffffff80ffff01ffff81f6ff80ffffff833d0900ffa0e5b221b468a7627c113f69b38a24e6e0564c77f876161c978509e41a749646358080ff8080ffff33ffa0cfbfdeed5c4ca2de3d0bf520b9cb4bb7743a359bd2e6a188d19ce7dffc21d3e7ff01ffffa0cfbfdeed5c4ca2de3d0bf520b9cb4bb7743a359bd2e6a188d19ce7dffc21d3e78080ffff3fffa0a75281e689e4660bce8e8b0806d1c56daee305cbbfea7cdcd6eae0937cadcda480ffff3fffa0016ba7b7117655bdb1fdf6cf589fd6a2e5457529608172097d97d092dda0b5368080ff8080808080995bfd6d17de9a68e651b8fb670cc756e0c1960a87f1d139cbdfbcf27fc1cb8bd27edb6a655e57c166cb30a4ccdd9ae5002198fedf18224f4193f34b4e80e23c8b90e80c00aee1d43a22fe0f9aac56db2f7f92a4d5759ac64e6335c51f42453f",
        "trade_id": "0x9934ec2abdbf6e13625a2ea7e8a93c56719b06a51fd71fdb1963918b4e2c59cd"
    }
}
Quexington commented 12 months ago

Hey @mor would you mind trying with the latest main? A fix that solved an error related to what you're getting was fixed so I'm wondering if it maybe fixes your problem as well.

mor commented 12 months ago

The crash messaging is a bit more verbose (last line below), but still no luck trying to take_offer. I can work around this, it's just one of many things about the wallet that make me spend more time waiting, fixing, or working around, than actually just using.

chia@Farmer:~$ chia version
2.1.1

Summary:
  OFFERED:
    - b44696ee583884564aa781b4879c507b31c4cca103e57fc1113321b3724b76cb: 0.001 (1 mojo)
  REQUESTED:
    - NFT Wallet (Wallet ID: 2): 0.001 (1 mojo)
    - ALGOLD (Wallet ID: 14): 4000.0 (4000000 mojos)

Royalties Summary:
  - For nft1k3rfdmjc8zz9vj48sx6g08zs0vcufn9pq0jhlsg3xvsmxujtwm9sj6lhfh:
    - 0 NFT Wallet (0 mojos) to xch194qysfak90pa0r4h5r256vch5lcuysd4qt8ng6t7xz7j23hqmu3qxk3e5t
    - 180 ALGOLD (180000 mojos) to xch194qysfak90pa0r4h5r256vch5lcuysd4qt8ng6t7xz7j23hqmu3qxk3e5t

Total Amounts Requested:
  - 0.001 NFT Wallet (1 mojos)
  - 4180 ALGOLD (4180000 mojos)
Included Fees: 0 XCH, 0 mojos

Would you like to take this offer? (y/n): y
Exception from 'wallet' {'error': 'Trade for this offer already exists.', 'success': False, 'traceback': 'Traceback (most recent call last):\n  File "chia/rpc/util.py", line 21, in inner\n  File "chia/rpc/util.py", line 82, in rpc_endpoint\n  File "chia/rpc/wallet_rpc_api.py", line 1855, in take_offer\n  File "chia/wallet/trade_manager.py", line 795, in respond_to_offer\n  File "chia/wallet/trade_manager.py", line 348, in save_trade\n  File "chia/wallet/trading/trade_store.py", line 177, in add_trade_record\nValueError: Trade for this offer already exists.\n'}:
Traceback (most recent call last):
  File "chia/cmds/cmds_util.py", line 119, in get_any_service_client
  File "chia/cmds/cmds_util.py", line 235, in get_wallet_client
  File "chia/cmds/wallet_funcs.py", line 767, in take_offer
  File "chia/rpc/wallet_rpc_client.py", line 854, in take_offer
  File "chia/rpc/rpc_client.py", line 61, in fetch
ValueError: {'error': 'Trade for this offer already exists.', 'success': False, 'traceback': 'Traceback (most recent call last):\n  File "chia/rpc/util.py", line 21, in inner\n  File "chia/rpc/util.py", line 82, in rpc_endpoint\n  File "chia/rpc/wallet_rpc_api.py", line 1855, in take_offer\n  File "chia/wallet/trade_manager.py", line 795, in respond_to_offer\n  File "chia/wallet/trade_manager.py", line 348, in save_trade\n  File "chia/wallet/trading/trade_store.py", line 177, in add_trade_record\nValueError: Trade for this offer already exists.\n'}
Quexington commented 12 months ago

I should have been more clear I'm sorry. Please back up your current DB, resync your wallet, attempt to take the offer again, and see if it fails. Keep a special eye out in the log for more "rejected by Full Node" messages. We've taken a couple turns on this issue so to be clear, it is expected that if an offer fails you're not able to take it again, because this means something is fundamentally wrong with the offer and will never be successful. What I'm trying to get an answer to is what caused the offer to fail so we can make sure that check is succeeding in the way we expect.

xchChiaFarmers commented 12 months ago

I'm having the same issues with a couple of trades and I'm happy to see that I'm not the only one.

In my cases, I assume a the following "exception occurred" is the reason why I get the message "trade already exists":

HTTPSConnectionPool(host='localhost', port=9256): Read timed out. (read timeout=10)

The error was either because of a non-synched wallet or because of performance issues of my server.

I take offers with

url = "https://localhost:9256/take_offer"
...
session.post(url, data=data_json, headers=headers, cert=cert_paths, verify=False, timeout=(3.05, 10))

Maybe this helps

mor commented 12 months ago

Okay, it worked! So, nothing was wrong with the original trade offer, just my wallet. Which is generally the case. Usually though, I see a trade stuck in 'pending' to cue me up to 'delete unconfirmed transactions', and then if wallet remains out-of-balance to move on to a resync. Hopefully this was a bug that was fixed in the new version and not another 'wait, fix, workaround' item. Thanks for the help.

xchChiaFarmers commented 12 months ago

But the question is still why this appears. And it appears many times for my trades.

mor commented 12 months ago

I've reported similar issues in the past, but never got anywhere with resolving them other than 'resync the wallet'. I use Chia far less than before as the 'wait, fix, workaround' workflow is too depressing. I want this software to work for me, not the other way around.

xchChiaFarmers commented 11 months ago

@Quexington, are there any plans to mitigate this error?

Quexington commented 11 months ago

Hey @xchChiaFarmers like I said in a message above, blocking a retake of failed offers is the expected behavior because it should be completely untakeable and so we are always trying to identify cases where that wasn't the case as it looks like was the case here. We've recently had some fixes go into the main branch which should make this a little less of an issue and other than hunting down the edge cases I think the best resolution we could probably provide would be to add an easier way to fully delete a trade so that you can forcefully retry if you'd like to.

xchChiaFarmers commented 11 months ago

If this is really an edge case, I understand your reasoning and an easy fix certainly works for me.

So being able to delete these trades would be very helpful.