Repository: Chia-Network/chia-blockchain
Pull request: Fix CAT offer aggregation edge case
This addresses https://github.com/Chia-Network/chia-blockchain/issues/13464.  Aggregation is not technically a supported feature in our wallet I don't think but since we're providing a reference for it, we best make sure that it works.

Problem statement:
[Bug] invalid hex at 1: 0xa402643c84 when taking an aggregated offer
### What happened?

I have an aggregated offer with net zero arbitrage amounts. However, converting it to a valid spend bundle gives an "invalid hex" error.

Happens in GUI as well, after pressing the button to accept the other party's offer (don't have a screenshot, but the error is the same as in the Python log below).

Original offer:

```
offer1qqz83wcsltt60mwu0y692lalqacy8js5gfjpvyfjv5kgavfjy4e4fe3eyaejggk8xxfjju7zx9fuvv3kfzrvcwhxgfngtnry337s73lw6del7uzkadmawhfawlm5wllv7h6aaak8m8nmehklkhqu9s3zc5awfhat2yve87dhmfsczm7usj8v2ev7ppvn3925xxmxaadq9h2k6geeen6a0wjlna57q436agvqy2m67zly07ct0ps74s5z2seyavm7cysfu6erns7tcflr9mdswas5tsgf5kfxnuf68zjc49uc3vzrg7n53dhru0wq80la8qe4su5rmzkf4csxup966ur0zg9n6ryyud9jgw7asv068u6hr0rrvn430ju7htlzlcxd0v55nm0lhtrcrrdjc6kffpkw8syvly95mdc344hrztzgjzr0q4d977dmtel26gnp39k4k0tsz0avexhqevjl3xxxc6vrmtz35ptur4sjtt35ru22q40ptslxvtem893gs87ghc8y9lwgzre7f548rqf4xgvm3uymf9uue06spjfcrfftl36cq0k5ucwy6rafsl6tlnvxfe78kzehdrzcljwhg5v5kcw8zzlywectew2ntwxg8fhywnek04yj03j342f7t2swgwf8f74lwuh2tpqd5d7fq4q9tu5tn3x393uw2rym7f2jtpkztzpfnwwd9fnlnk8cls7lhsehvrfmp9exxv3puj30uu3hq89ylzppacjlzwxpw6sykk9424qzfcwtwhskjm4w9gaxh066hnafcwrl480uw6zy2q080709mkx034rpnldkue5rfatsszq5zuxs65axhgpv48yt3dg5ky55vc4mww9265k22xpuaklr48aapsuhwvtcn8kuj6atzrn2kuksj80sx5e7t4r55ghfy4da46j8nf4jf8etkclglw905gw3rx7kqjgjmksvgckjr3htjl2etmafm8s5kxljy697y0srxu48jrm3y2ddk9sft7yjwd878kc24m9nt3y3h9zzf8c4dcj84gnnu0h3znr5x92xmt5ga3zew7wcpn4rjc6v55ehgeg93tru7z37wny6k2aawxvrkvl2np4q2c8za9peal6zm70hgr7t0nzgmkwjrejwh8ppuywq9yy6rh4lvyf438lxfxcms4s207qm4dgsg42ldem65pvnnqqhn445dlm2gkxvx4x35kwwq6tn4ltpt0cw8mhd7q6macl682nlpjjkqegkw3gnzvn880yhxfm37z7s838k5l343669uu86sf2t92maadp9hdtyfdpy9aan6hle5pvmtx9t5lhnjd566vj0d62xyr57lqw7kfracefrw59yhrr0h4sc40txwzxdxesm5r46yrdxr3exj9npjpqj6gtv0reaynjqsha3y8dadf8kez5qcdrr5n2v26a2vsmuy2p07qdf67lsfs3u6m7vw4m3nv4wg7k9jfnng5nvgsa08u45hmrqsrz5md0jz6sj0gyrn24v4yd8yaxjk8u6974ty086wfkcu5ujg75lzffwas9ldjkyr27saanjgdg855f2gwjgwkgw5gx4gx4gx4q8l6863rn7wdrcs43wr0xlj7sfjcnda0q4def6hr6a5qnf4x98deg2z8h5m2wcrjmd07v56axlnrmp396rhllyqvwtr9nj28qdv43nmsc6g0k5whqt7f8p8q0mru2ll7sp770le389tecxzcvknqztm8l3z4ch4vdntt9a5469dvllhah48p8sndgfuy23pkqy3xylzg9l0t9r6rfyh0df54zg8n6khdm7xuqgdm3sqr3tqwsycz8lwqy89ldu63998h8v6gtlk3c58huwevrlje4w4nxpf3j2nxqx0yj79muvj6k9lhesyqx8nfz6mpqqprjzxhma3hml9xjtwjnd6utfq2uwncvwtqz28ztx2p3lrz7dh84dh2z42gqwyagj6j243ducmrpmfxzturm9ske3f3g7texezumc88fur3pwfr2l590lwqzzh248wn5zxn5469sdvxfttqx3mheaqt6a9mmrd8qw87e6hzu32q7setknld5dzpqvgpqdmjutldz0cjlpxyvakp36uch6m7d6zdchmw4ggtz8n2qa3nx4qdchugcg7qvgcdzqdszfdfspsfg3czvnang3vvdsl7u58uxpxshk32gvfuvapfervlvhg64fwxp0u68yak5acfs4nvy8ayyx5uskrujj5knm88dste929rvs8wm9akfqqjjd7t3mgr8m44t6qq25y25yg5yf5qfyzf0wr5pe27pstsq9fckp2rl3ufgkth97l23yf0lv5nmp7ng75yfp8lhyn8z5rtmcl88hnwn6ycre8lpj34nw4cl9vxuawl73v6fk5pvhpex0jn5g690ysvu3xnex5hq6h5uhdjzxykd8efdzlz7jgvsgv9t9r47k23mhfe6frn2xqfcwuzmgy69gfznymvle54aew353zkznc2dr62tg3c04ffldpkv6qcrjpvhkzsen6xpfmm9f8aus3rnqv2zsenls3yafd78mjtqeefvtz8xg627n20azhlctf3zwpdammlgg0yk2ue53uhwaum6lr6q539a2wc28r5tp8ff8qhcu2zrhs7gseqqtxnk8aku2x4mh2ux0euy0hdlr4g7x4umq7z5n446tz9ankc6frj9rxe603cdd8gmppzyatp0hssn85q4ae4u82rmhfsx40w04erf5203yz72a38h638a0j790crm0u36du2ctcuxevukucdrxxh6vsq9e57w72vdsw80jh9p42at82e5jcet3ljw85z5c3zsz4yy9yydyyfyytyy2qpyytyy20ua3t00ue6mqaedmkk58u7fefhaeam48xkhwqwx0cptyynah57nscd6y6r26k68j65d4cwjpw8emjygk7uellyu2zgqy9y563etqscqmlaydzj34n2wj9l9n4t6shlnf43jek2tpd624thy5tutwxx7hng89q905zeuc09vg3nwfykhe6y5au49vjmsjnsly9ppg57c2gqgpkd0ygsfhdnh8gklg5ja5r6nzvtxg2c0kc7x2jwu4n85u823ygptcj0rzlgfvj68xxph328a8cfzye8h2nga5pwdk435gkzhdh4j3ljg0zrdw4mqyerqywkv8nas9s5y7kgjwmc0cjjrpu004978ufs9kh02mvvlt63y4c8jxz5gep90446e4wv6wkak8jp5xjgw3743lsexyze2l3ng6etf95tg8mdyy0ehvhr2pngewtegcjz9e6g80ukmnvvtdzxeatmktr9edz0hzc09fnha4swsj70jat8qcxudx9cw6yrzypzypzqpjzpjzdnh3sz93s0ssygxyp6r04a6q4j7zjn9zfrx8drgq7fzfds0y0wjfjhwfj5zyrgmhnlvdyg4ykvpdhm3kkc7xcky2jjfg4skkym5zkh8auv7mkhxv7lkyftfj8p5a0xqtdysazte8pfawk8xjng7ztk0xxufeawxrjclrwa4rd6vx0v9a8kasmx60cj4uznyhm0pef4xfj8r28t6k3e20pa0gwrwau842fxdrclgnk6mkwaczdd9wv5c67wxzt96h6550d4awgqearrkymrt7nmff8j570shvf4lnnvt5aesclh5556cgtzslj0vc86qa7y057kn2aemjvd2j02jjsj3q8yqvfkhceupyr9mejm253hyckqnrk6lda92f0hz3tel42683fwamnm7h2qt34t5dwt3gdshf9fahz8ulsxkuccz6fvvvulr9asq9uuxc2cethguy2zkkyz02vjrczry9hdp53dnlxfx29rsl37fglfdtd8tqa23reznc4x49m9cz28rhkrkpyaz7tjjw2zxwmw8a48vrcck7zvp7d6heehxnqsql5sn7t0xew334u66u57nfljnvwu22tp8lj4z5g6r9yugstafl993lglsr7f6myukajutekr4vgcy06vq8df3ef2ya3zwyhtf0lnlw507fh554wfuzd369h7w8kfnzkh0rt8k40keaf5567m0q0smfk4usshey8vr6x0nl25xfdjpe5w8vwujm0d0h5uqr3hcf4a5drach7wztx79stdr0gcreglp30xk9q68re38kg7p30lzs4ux9fcjwcs4q6c9srhkc0cy0f2alqjyfuuagj6jcxulpgk92n8q33062eryzz54r5jvcg5cdan7epzzwmddydesjvhfxj7ytw8uc464tj0n3gkldmmp2yycg608z3hee6xm3c2tx2m66w3kzj0ulzzl3cgwvv6qh4d5unf3zjlumje6c9z0pxkekamax9kxcw6awus9cxz68dhcm244vwzxtteggl8vzt73xeu947wt78400snsxp6apapzdst6sptq8vq7sp6cptq8ldr5p7hsxpwqqtq8saph677c2vhr9hs0crn2u4ljwgt54qrkheydd07wsdjhgztvf6e750ujat7vkayvljvzu82uu0chulcyq9ye36gl6upa9nrtcxwu2fysn34g0zf3hdpyz0n87k83htjekw8ruf66gyvmhg5ed3z43ze6uxz9qs8zd5wrf59ewnpc8hd6gwlwrc36x3eqmww5dddqyn0xg9vdxsd7h7z46r6c8n9jpytt54sljrutvcuetk5fh0vcfpuef20adf9g37d7g4sa6h7dtrmvz3p987l8dp00frzgmn8xqxck3x7nlv6jxxfqjnpx7feaezs477qeqnt9wrae0r586lx4qvavuwt275l93p2wt40j4f2384c7k4xdn4z2cmwkskpy4g00q6uknq82cpnu8npnru5vqmnakj2054fnd4ft0nde2m0t9tc4xpve63ycaqceqqugce8mylpjfjnpdhw5jyt8386lt7qfd7644jd0cnpyx5az65ncmpkwcgj64zpe5mm68ah8wruku9ryarg8tklr0c0jfdmgt2s7d0hnxlzml6kul9z849500d54mdfuevq5xqz4mxlxllvh9ptxl9j8mr8dlwahj3ks50u34609tdf5ucu5h3x8t4hhlml4yz6k8ld4ay2dsgzv5guetncam4qhckl85vrz4njt43rmzhlzztcxrt35a4fcew3ga6702l2ghxuhjc6jtl4urfxc7vuwpekzz4ku4gcp2tnqmjrlfzdvpevk6ykuv8a7qee7g204qq868v5vjcapmyz2e234llrwm80ch26lfnjrgwfkwf8av47e3qa2ykgk6axt6dtpv7vpk496ausahqwr3megtgzs2hqe4pnnrp3s5j4m05andh3s5ehf83ea29s2n8wtzvvzvrmufte5anf9nqjwsd77lag66fkm7rwvdj526j53ntalddgjghqu3r7wtl40shquza5qxcpmq8vqdkqwcpmmgaq0dupstsqxcpc8gd7hh4rrzkjqu4yahwwwen0um3t7rry8dn7l3ln7c6vumuy7f7gd0uau5eppcwy7x69c78xa4sex538n2v6jxlevnhqqlnlrtc8rgklxr6armmfav93hjte67yuwhnhvaqevms2xelsm4s5qrh9dunccsp3uz597afxjjwe7efeze7j6ka4w83740x0rfl34ye6xtrhjm0qc9kxzx0p5268j5q0h4uc2cr3h9mmyzxma8ma4xsu7repp2lxg453zvsq87ndyykf02tlj7p8mmm6tl7jzaup44ykhjmcrjfmhcv9suwlqq5muewlv4x7027u4vkvpv58es0gcwgvy3q9cpy2qv5vjttfu5el5e90dap2fz4ygd3ur9ahga9rz6kzp8qvx24drzth29mc8g5nwjnxzgd0gq4ztx0dusu9y3max0h7j9z6lfyljv6hfw9qg65r6svf4k5f3mhjd90yz8an5k4prn87vgjnlcg7k8vaaf2j65e3wtxzn7vxjya7625szf2zp2z92z92zy2zyhh36qy50qc9cqj4urp49lg7ymjrgp3urh6xmxtm0c6wfadp902fwql8tqwrw23ekjy4luyfm27veneu6qdf7kfzukwm6ls7fl4zuxtn74xfgznq4lz3s4f39gypvmz85m6uutt423cuhew4mydzlh7uf3de4kvecl3mvthdlcsakh3rqmtjg52k0p8jk28p44hphnxl0k2e4e2hjg3hr3wwef8zrfwjyxuscmj9tyu5wfp3twztqmrj2h2a2j7ep8f7rn6tj4qznjhjn5fexrutd77lce7y3lnvvl270cntc5p577m5tclwpjqpv8hwtdq0z0a0u4hf3mh3fzgae3h99pyjs5zx0sgme3xaff8506pu8n6ythndw2x6lwaazkdesecfm34jpqdgwtkl7mavcgcqvgcvugv0shyeyc4n9f2z5kju4eppl6z53g8x0gxqrr2c0k867xmgcm5p4emnm8x973fxa587ry5rxaml46n8qvn4jrdzvcyteg8ahwgr5e32mega9csfu4pfzps4y7e3t87u9dnru62q8drergfuczkhw5ur275e2dvt96vlmf8l23sqtwyjpygpyfpqfpzfpzfpzfpz8l89zgetjngp02jtm6g8cuas9ylnuckptr88w5q57echm3lhkmauywcer87n4l4cs9fvcrn73hmgty44v04l7jzy2f9qcjwc3722ccwfavhv5pv6t7k68mdv65tk964qvy2f9m0a94kcrag6k4ptgyvya3yh4e3vywktl6m7q8fuv88jkk0u3rvenmeyw96d78uv4jdjrrsjl6rzwgvg3asg2m4rf4u59rumsl97qwkk4hse005lmwv80z7u4r77gey328uy238galv24ahlf6vhnjsd58zh4256q0swnatetfyjue6tf0zcejal3rpk2xc3f52jgpw98xz7lc7fpfdj0cxxt2ytnuzlynwamg8a4t36r832fv0yqmd85gagzww6vvv58k80zx80akzy857zhk8qfk53qudxvak994ue7jf9qmmmgu0sxs4plp7dm4kee432tra2lmwyg0edapvysjz8lju7fstc6wq4w5lnmyg4yzq8gls90tmcuu0rcjpue59r8k3hyqjxs3xs3xs3xs3zsprauws9rrcxpwqqd0zc9g0783zvc3f5r2ymdz3t2jwd7c4ah4uknuhxwmg4nhjalgsw5frrt2zx74nhs79m7yyfq6kvu0t4n44rkvwha4xgmjvf5yf98a9f5en0u9tm765qctvsw70x20y76j7rfu077k7n24089n97748h9pnd8au2lqg7f8pknjujk0s6kf8zml4m6jlx39mfvufjtdxq4r4mck4tnl0n7meu7llghfjp3h47hzr2dkku48vdg7r893nauuygkwp7d9zh5pej59frxyw6vtxaj8skvlm5hv70w57ggnkkkunql4267vfrldep9zv53t7ejfcth40lgthzdggvnkzc4lqk5et3r8x845e8f6m4cqtlctw6976tl2rhckkvapnn6umy0vxv80ha5nqtks0ks0ks0ks07s0eauws8mr5xpwq8dwucdf0780ez3gy3dvcdgz7f920fmzfhw4gvkmc2kfrcne369tk7vh2cxd8ff4k2u6386nyadgcj5dfq7t9fzc30u4876gv9hmua9err6nhlvu2ryut3rwqeyrk4u7xg80l0shlhyhfx6ee84nvfxv68mcy5nw0k9ej5hullzjvlwr8reatk63ldnlral44ktvckf0salpyrzelhn7cd34rs7655fyx9lg7gm9kkn60703fx78f2ujtxj7mykd5fc4732k02xvgauckdm50pvcl5vgywu5c4k7gf9kdp8sl8glsfdutpycrvmr36nflq5rjhxf6c2gtg5nxxcp7pd0vh3wykfg5a2ewac67luam488qdus2x0exhk29xe2sz95fm6n7lk6vpw6p76p76p76pl6pl8h36qlvwsc9cqa4mnp49lcalyre95ynxkf3sufge0nef6jh05muak5cvcnsa0p84t9n4nzmulgk6cnlu4pw9uwnh6vnulf0m45smtez0a5nctw0alzu0pq5u2n9qry8f2l86lcua3lc5cc7a6yqfrhhmuz4ysr33wx9ygkc0c87m4jwvfzf2guxd2yu62yhd6e7ztthm4xsnk3vumxxjwqw9dd08lhn7kdd0j7shxek3strejn488q966cezehkmwgtfv45ae8tcgku9nlhxrfpkgwwttwa2f3kg0zan6f7c6c7sfy42dkkzh2naac7xeda93wm7majxxugf8nvwq25khf5hwzsk894huuqtqastt4djl5y43728kkmrm4urzmkcjdccevms35j63zygtu5d4srrz747wl02zw0m04ss054mp4ygtpdxfcx3hkj229ef0h8hakrlkmwksrks0ks0ks07s06s06s8mlh9lkpmgh7luwls4hfdaxns65exfn4k72sxlnca3ras3j564mre3tcmvw32qyd0xrghzjr3lrmetxprxj8gx5kgyzfe0l20a5zvr79lcnh37d3m04dlxemn7c35ktuyekcjv9a9w3vh6vmucgwa4wwe4vs0qx4rgy0d86tvvkxfnmah3vtej68g7rf672wmxrvdfvtnufuutdgzvjafz9haz35u9ny9ghdkndn8dvxakad245zf90g55fruj42alumzg8u4hdydr8d4l3nypgspzymywndm5v264l46vthg4003zmhk44t5l5mt9r85uap30ur5v4cfftprs7t9yqd83jctknzve0j2uyul6ef59zw8us05j3w76f67tle4rr5fafwgwcvvgqwyvv058xcvj2nfu2fu6pddefxc5kuln8gsumutzznh848yxa07n5m3m3gmsjeasp8d57l9px7f4v9lwwxa398zlj4n7uq0p70w7r35ljfuewqj7458vu5ynvnm0j6y8zqwukvfdw0pv8q7966t0rhdm5kj5vc32xdr05lk52c6dn6q6lshtrkl0564s2lrd059q0l5ama38udfal66frrtnsfcz5zktemllpvdczzrfrglkr2
```

Aggregated with counteroffer:
```
offer1qqz83wcsltt60mwu0yuffmalqacxkegfyxeykjpzk2tfmmxfhe2yxa3jmy33zx2rwmvm0p934wkx2t2fjmktyym92lytam70r9rva6tmlcc904l0nn474ammlnsclkldwdaaau7uu06mntuec8qvqwy9w8zd0kc3fx3mna76c9lx2tnuca3aync9ek05j2qatkmh34yjajefzx8vl34aatlld8s9zwnjpjq3zw0s6zk76dfu9auhuh3uzx44ztmhqrtmj8jwrtff6a5lu5fjky3wpzxsege07yglneeg8yynp8uwfsfwm3xxhra06krprc5tcjtg2fyhvymcgg5l7cqzqv2sdsh7f54jhndrjkgmn6m45vdk0x97mhm4zana39k4u3xta4u4uwycv5rrjefchtlwhd8fdvxewcwd9csscytlwhlwhzslx74jl44y3nfjm2t94cpauxqnn45jf0e262e6grrgz75wwu44qutn55maj2r4dp9s0wvme6tq3v38cf84ec0lnyppueyztnkscunckmyxu95j7w5kaqpxyv25cn0xzxzlmvwgyzdpk4gll28ch8qudxmwwlkn3g0sq7ylczrdt8pzdydmqxc6vr3d29mp5cjn340eq5mjjj5vf7ags8p9w9ecnv7e0yj804fhazxdqv4x9hmy45fdsaheptl4rywvds45ujxfazxrdmdmnsf43hydhw3nwvqng3hya3q9th24h6kzg0aqjvwgky5pes7mqe6092e57vyvglwnu207yc905zclftkx4473rcerleaccpncy5caymlw5lzjvrmem46nzxtch6xg0fas5zhe7dxea9d7ckzsszwp9fec2wlv244fdghyaemw70wlr095erz6kq2t9n8aukgyx90f0pgwla0rp22h4d26e92k4j562a4ck99we92z7w4app72m2saz2gdyff0nxcpeq5cfw8a2ggtnm42tkhfgs20jgyque4cg8s5wyg8stv3mqvsu4v8es7lpdtpglu394kgry3f9twgal6v78xvk2ukanj9870pzcdfcxxteefaqw0yj3arnjh62qet8e20m66pwy3xd508g3rp4486sg3gj5p0yfp0807y3l9auzyl0r9djrw5r3swmx7xuqwqyyq6r44lv8j40xlzf6mtq4sy07xack5gls9dhz7a6zxp0qq834e44lm2dx2d6e87k5tsz5axrmxuhhhdtswt79mv0tuf9g3kp398dr536ayansy5u56w000csx8hvgkkm0m28n2hr5ljrfev9t0ju66fwshq6m22tne83d0ufx3kyg2t2l8h6a8ygkp4pm6d8l3d7zm6ftsmsj59a0jp2xk79e3c30n3uluqt2casznfxw5q0ng2j5vqfcfrjpdl4mkg6rv0xtrn2xj6jhhwsfq7hwx4f24g332qmw7c0qz0wgmz3ll4zyrk6sea5fxwe4f38n3wp2n4mym3f808acsj30gatr7cltgdrwe4z04khts2llnnxxjgwkgw5gx4gx4gx48lul7sg5hal7x742p8w7zxp7vjc8kpxr775tu9hd6r4j402vrn25z78v74a62247dlwwjkxaeenpnptkfh4g7u5mkh4lmmtqyfm9g3zj6ae9g90062tuaeql27eesaemlqtuz53ajrkf36yl5z4qt08zhs4w7vgr3ehc25yyhnvyjms758v83xdug2sfv9gm9s86l3gwg9cuszn8dlqjeyndyu655lgaq3cmw9c9k35027klq3fwysgdcpl8q8kc53pj3rzmm0gkmnt8a32hkgv5ker6sug604ys4crrhvdnx775futu4k6eggrtupazcu20f9qzf6xesa77z4a5kua27fw9trjdk3nmnl3e9m7ph3k67sp229fz92gz4cq4sp45p95pd5etlps6y4cdcgzle0407d438lkmhsakf0njtewgfyft4k62prfs4hghnnf8am5c84junhmhvwjd7z6l9ch9u9dljzg2w2mh7avk0lhy2uda8vsguulj0cdqdp7qrzpr36hgz7qfamsx360mw4g3tqhjm6gydtsu2ne7rdm2a4djmt3kqcw68rcrkh9z6cfd7hvtvltjeuqrresswwzsq3ptvpfl6dg072dykdyxrhckj0qc98smvx8cydcjd5qrv94umxd20dypncjqugwuy4qe6zfqq6rxm3qyaulhw3jcpf3qhja8e67mc98zudjpwfrxlyth0hqpp29gn8262r3c2rqc2haq393lqlmj7sd7w5adjkzlktvvetpdd2rwngtjn70v0uwyvgpq96jc20gz0cznq685nkam5f3043un4g43lka2jqsyhx5j6rxdzpdchvg5g7qvgy0zgvsqf4tsws42zqwelgn5jugdqu7g48j8xv6ldzxsq5cd6udh73lpps4vtw0jkfq2a26f0q5374sg75u32sjge8j22j2rdu5kk0k7hq4y3ukfvayth5yhtjq02ff4mhp8k92vrj5y25y25yg5yf5qf0036qy50gvzuqfg7qea002930arvueeef9380m3jqd8edqtcmnv20vvj48wt7hmctqufjq2tt682vkemxkd2vw4jva728hry40r2unsl48g38s6l307jv8jweqq40f3wmfc5t8cm4nhpv94yzkg4ztaddehjh03k0w4p8e9xrsq88hzpx9gkq2wq5ek7q88jkh4cksq65trye6w72vfludw6r63wxeyv9css2t9gycdrry4u7usc6snz3khe2eyuhf25x98m2zkxqsk3g25xxltj6jjdauhlsxf3zf66tnhk5svfykettr3damw0yuhtzzy83g8wcvv3c9fp9wh8yp9dtswu2vsqfefmwal84d29647ph67v6m7ns6keekrzcmn4tuf3q7k05mk6y2cfg66kz62fj5mqzzyfz3v43luvdw3uh5xn3dv0w7xht4aew3y4xpf7y4np0kslt8rtu0s7fwc0mm7g5j8z49azw5egnyw25j9td4wh7euuwjg5d3kqnr8ez4x24nh5cfvw4gzujs9q4jxj5q25z2sz2jzzjzxjzyqzjzxjw9h6wg587lu7dsvujunf2ml0yc5tl5nvmd38xrh3lews46lw7tm3weysu96lvjyllrdsvnwr90kr5w6vvn90e0af4z9zq3pgay58nqykx887fng55vv5nlzmjhx4ln5ughvtyxhyulgdu32wlfjmzt33e55a7927fuqslxr39hsahcjt4ww5yrv99f57uy5v7cpvgk88sqzzzswap0y0cr4eanct0v03zmpeg79en84gxa2088fn0jcjzvret2gqfa3933dyghftznxy8s2t7cyy49dredch7r39zjgmvcrm3mya8vgngdjpmm5e0r5k5z8t9ncp5rgwrhtgdxru8gwf43w9hujlme4xytrh4986t9422zvm6n305e3y46f7vx9x9h2733ckde4zrk4uxf6rku5vymj4zyta2666txr4hvlxgcjv7xm5tcfpgrg49h4xw04ahd4pvw23ahqe4ttdremk7lje74kw0ghp4rh77ec98rgpqz63q6ssvssvqsvgsvgsvfak8gzypmpstsqgrkr84a7q4sj2rkp5tay84r20vsvef823elcfxx6znyuduqc0h5k2jggjn9lz6amtnw0dwtvxpw9u0cr2vd67tt077xvam9n6vlmqy9hfzu590x8n9rz6yhcvulmdfk99kjuqhvwvahrrmuc99hlzjm7zacvp0v8akwasm267cf2cppnfxmsv2d2j2mp3rd7thzj4ehf6a3mlwp3tz2nyuh5zak0an8wznz2wen0prsmwwaegnrqhehhfu739s85l05ht2tvfx0uk9vpd7xh6w9jd8mh9d8w5uzmaxanxkpu3gwfth3e2e202u8r5y0feg7fq969trvq93x6mfmjltxnrmgx5wr52accrr4y7etmy5x4evj3c9ttcvvehkuux7fpvxdq3emwpp07mvy4kce047k4n6qz6njrrt4c7052mwgrc9vg4th559ld2zy9etrg6qsmzd6yfy8dvqe82jya85djz96d2r26hm6lsw25zye3gx6w8r3lvejalj8ghzc59nq4jpl9x6edql6dnlxqtc03ut4jeh30n60n09hrwhgm2wwdyt0w5tef7xkq9vl8039gks7l62c9r8ss7320hz98k0432gmpzch06yp3dfs9hg0tucaxnysftzccf5yf87c0m9rn3d39e9jh9rjwpd7t47zjc93mcue05t54tydeylmcynl62w48qg2uuzkxaarem529yxcpzc8a3smxkl6heam3qv89uvl0r8qhqlelgvccqqdkder059m7xv9e8n4swtjz054lnzckcqfucw8ufmz8y0jlyqy7nrwqn47uts9ydnw624ydrswmw8qgt9v6shpaljppvfaq5r4pyj3lwrzudhav8a965ch8cpctspf7h7z0ph2408vl82mmeh8v9lrrxrwy7tzlnjyp89jvld5azu8y45lkx0pnfs0cnp849aa8xzg57flw2gc5cvwnh3sgfan0t9gmkwt932lm6u89n86snnmypvk5zmz60ck4d5dl3r907vfxk43lnmd9v23a3q0qpxcr7q7cqxcr7q7cqxcrlkclq0dcpstsqxcrcwg07hkkzn5g7ddr7qvjk92arszk8cxa4uem2d8g5z6galjat9r06vkfpmmcmxd9stc6nfzrgnummyrcqe35f07utm2zz8u7msfusjzz9t7fghe4pwnlle8jusj0axhdh5qwhs3943vejugq3vaz4ezxuxquz6gul4zdnv446km3vztknda0r2085xj7v5ydd8g3vjfecdxhkxe7un2rksrzmmk9y0skj3wr8w8hpepmznds3wzmlqrp5jua25j6nrwlfxhnntl34qlt8ygdf8hfnfetdgwfd9udv2vfyl86wpumslpcrkdc4e8xh5tjmeqxygvyhccd4jwse2ce5en443p0txn5syd2e2kteg6cf9v8en07c6pxvfhngwqzty00qqmjf4l6awpw7dejm8e8y2wdrazkeem5a9nvlyg7zhtue2v8pe260yvfrczrzqr3zm9q796q5jtla75ccdllw5lgateuzf5h4wnmcy03p4xq54vuxsvn7rc49snkd8pe9wmefq85a5yaxvtl4ld2rh4lvqvngm6n2xhm4w7pm3mxwqw0hhzvgh8a2v5v096tu44888ltvh0ptvl4tyn984mjps0qu3ccnnv559xv4pv37d77vxsrl3l38kkrujmvlaayzgstu5n35mtfcdaqlsn6u8k0n5kr6t96r6qn4n2as79lr89ce7phl6k65wjddrs9m9u5xgjlm0punggxk80qm7x24vjl4lz9xnd790gra079yrwztw6xhh36w0jgnd2qz77e9fyx9ga6q9sjszwhemkeh7es4j7x60dwc2leu74zknzya5daj4jkpnwmtcqv7nx758v0zqw5rhdw622uqr7eemfvvvcm55yy3wtmxaafv0m2y6t6m94q5pxwa7v33sw300q2m3d9erdn3gf6h4j6a92g249a72etpgyk93jy4jwc6pyrzffq85ehqahs4qvpmsqas8vpmsqas8vpmmq0cxwcrc0cgzvpmhqx82m7335rmlu9tv3tr55gn78jf8wmxxc5s0vwulh6a8xapn30ughjd7xd8zhwqw2m3arl5wseyk2c3e39dvz8lx0hgplnjpf7kds9md8mrrjlnumfaves04f35lwn0f67d6vj2mhvfa2jfs0vzjer535qnspsvv537df8z45g6y9u3k7a9fssz4ve4m2du4wxw3jmvvhmgy7p30qnc0z6sf5qaeu3dny084fv77zw805l02k6mncpyfah3se9xs49gy0sm9hng499ln2pllhttlkuhr6nut6gaxymkhj38y0g3r379czlqrpaax4l7wd264km6h8qxjy769uxrjjnyqqwq3zjr9vfw4ulj276qj857hyy72t04s90a7hhlm2z9hxjzqfwzn5yv7mf8xq3r4tkjtc9yy98v6fucd8sladvlwntv5al06fcxt48r4tnxdr65s9xn9xzsk280tf4mq688cg44cym5dgsw8r8m3khmzldx26u5p3kt8uj7c8zgap62ysr32z92z92zy2zy6qyhhcaqz285xpwqy50qv7hh4zcjkn4ha3synht5h0aarec8ps5mu7d6mel2fnk78mp7ql9zra2c8706yhavpey6k9r5ehdd8qcslcxswkla2gsq86fw74jqgnzejv8ftw7hwmen92ygkj9lf0xwkunul89ye4x65nnyfk6zm6r7dmuekysr4yfvct7acjgfddk5klmw26rlfryh22tcya6un3kyggm2ak3dk5zxystdt5p5qy2m4js9g3j9c8csh2ffjus2lr5jnxffdeecy53puywcl0uvlzvlf78k7ktu9jles08mh4wl4ls2tct32333heht8eav7u80z2udzl059cfg38xfg3nczkcvwk22f4p7cvp5lpxa5etx3xnm00d9xvl4uxaltfpz9fk0k86rlg2yvqxy2xwyxtg9e6js23ny4puff2tv4q8a7yg5zntsapa75v8ma70rd5uv68tv6ed5t2agetajzaz768nw376hprn7pm2xklzvvevljwehcr6ym9facgjyte2tllzw49glg4vh3le93rcejy8ay02snmn4g0p2lmynxe7usf9jvmgmmdyl458syzgjggjggsgq3gy3gy3qy38uw7s7yeqd0j45emt7dweqlacvft0r684hjszl3xwt9478cax376tk0den950lyp9hgq2yrh48m6av70rka3kslz2gcs8raytntg2n5wvr80e28k7dfamarac5995ay4q3j94uyzj7axa5rt2k95qx69q3rveguult4ru4erha7sx0a30302mwycexqlzda70n9sm8f8p53flc0zsgentrcmwjlyax6w244fhvucth9zwstjlmlfd34acf8u4x7hezz02hu3wyp9xw36a5h68pkw5f7kpqtk2fn27yy6a5mxvcjnj9p2960r6tlcyyreccj9ts22g9g3zlj8dpa9ucege3u0x0j8d8n3zv4mk3lat8w5jtjujq6g442qrsegch8d9xxjrmrhsnrh78prrawznsvdlx5sqcdc09ty93v6yl89yrme0v036h9amfpwmeye3usvta7glclyv09t6m92pgx3my8cjq4sswlkughxwlrz9chwzxxvsk8kehd879nunstxgurpcs96zy2qy2pywpyvpydhqlsvxh3xpwqqd8zvx58lrc36vgs6acytvzp22j0d7cx5m27tdut8yas2eee7a5sx2q3p4sw385y5uljw9sp9fwkn8p6cvfwd8xh972nyd0yp5ugfrae25enleu84ldmpmxwlhqcuawz4vtdj80kttd7x5262t0nejmslj9828mgh70xa7vnp99uyqc38dzw9t72tk3807rxqacp9w4uug8lkt94xh00077l6hrn4cdqlk485ch2evfcyamd3el8e5d84x7x94s265ydtn3ynr6gge9kc3eedvhj4a8vja3fhcm65c64akujx3q80k2rlru2a9zc8jj5ya76my3f73eanwyp54p9wnkrwta7rnlny65a59p6wzewaaeu2e4pa466mlvfaf6w3pw6cecdv6dmq0acnqlkq0ks0ks0ks0k30lax8g8aplpq2s06rjrl4a7e960ymdxfghwjawnswg4dhj24ykkzf3dz25udklspsv4t67exg4pj8y5a7vuxtgky3r5tq7dp8rvx86ylmf836l0m4hpg22whd8hgezvdtl7hrf55u7w30vuae7fz504yjxr88fd5n23zw20mc8yrw74rve2870hnfvw8wnf77flvtan9a4pnmjeyzvnwnyq7hkls4lmmlgxsu3y048nghr3ayp944m8wduxnht9mfegn35m2l4knylhvjwpmytzmvgaukktm2xskv0m6lamj2gtt88gzm27nswt5dct8xrqv07sv7caw4hhjwuefsyz79z4pywlhz0qxekhc8na0fqme5ans437elh29w0weh95nj4tvygdv5lstqs0eyrld5cya5ra5ra5ra5rl5r7ld36plgwcvz5p7casma00kx0n72f42y3cjgy65fj5az20l98w8mdv9pav8yq6hkghxuh8727l4nfdnyl72tpv87u7t4886j64d4sa7jnld56ymel9em9chc8u5fzqj8zm54jmhxtg8mdn9uk64sugre7r8ee9zjc88u2rmz8u74x29p4hs5f9daxuzv9fn3jy07qdcn6sm8kdcw93javx4c9ed9l77hme45xd667mx629vlyj2hu6pn2e6gkfazcjvmrzd00f67vth7fl06qqtd3rhj6e0dg6ze37dkkwrtsmdspgk965j3ne0h94dumfk56xmt60hsl2pv9wfp8a2u64p98k2vch4v08p5mmyz6etgkawy5dju924vlwh8ht7evdhaz9ldvyjmfyyswfjaevvmgp50akdrcd64u6m7g5csmjhqf27vxp04rwdg4y0j6awg7mq8sdks0ks0ks07s06s0mak8gra3mpstsrmrkr84a7c472tyd09yrhvcy8wa9yaz9enje73n93kmyqnn4e6gepvxs2nu54xa98ykaef3x7f47ps3kknfj8e7c70a5ru2lm4sylajmha0cc74n0zatxes55vrahvjsz0a57047h2y65mg6a4g0wnyrpqgzv4zehmmc2qm483eltekmmtwrfzj2wax0v4pdmhvfavvd59u5upd987rmj5gzwulryqajvssudltwk966h89a3pv278jkuvl64d8r62mcn63n7m0ue2yqe0jygw7p00ghf6klvsjv6s2fljy556adej8j6mgrm3hcy2ecrwca4j4yg4jz8pu6ggqm9627g6ctr97303n5l98xl93kknp8rr24wsmaw33rwrts3wwk2yvqxy2xwyxtg9e6jj4n4wgykdsqhvsjc2mues6tkyk2ps35ac92mda69saldwlnucutagetajzprdp4qfmcr0dqeyswftq2v3vv6jde6n9yn4648z5zsxthym9u908zhjvemnxgjymu36ahg29uft0utphggmt0xw77f8vngr7emdpx6kurqvr3qwysex33lmp8v5wde65vlnge9ayw3dfsmmmrtkf2v8mxek6467qa0lrapc6xcalrrcl2w4t5zr4cumzsskrds4h0w58s80nu78gezdu5x7mu93m5tgxdf443fsnmt6ng5zc3rglht4404hl80534l83y4yshezxcu9jnmtyntgy7rr2f083fcts8d2prm8hlyut6w24danmlkplsapsvn37e6l6vw53vvgdkxkk2vhyu4aq0malhujg42uhk0pq4fl23xtws84x02e8ys7ewynjwqg3hkxn6f9gru6tr8lff0qngena7f5yxj068605g7zm60hwwpgfx78lx4r8mqe6vhl7hzhsr0wvmcj38ge92rtdw8gh24vrfzwh73wkgv4f0tdenynl6yjqwsjnz624pmjp2panhwc7xl9y4nky60nr6gsp5t6fr8kxj2lzrw4v8tkt7qpsupd4ve754m8
```

### Version

1.5.1, 1.6 pre-release

### What platform are you using?

Linux

### What ui mode are you using?

GUI

### Relevant log output

```shell
from chia.wallet.trading.offer import Offer                                                                                                                                                                                   
o = Offer.from_bech32('offer1qqz83wcsltt60mwu0yuffmalqacxkegfyxeykjpzk2tfmmxfhe2yxa3jmy33zx2rwmvm0p934wkx2t2fjmktyym92lytam70r9rva6tmlcc904l0nn474ammlnsclkldwdaaau7uu06mntuec8qvqwy9w8zd0kc3fx3mna76c9lx2tnuca3aync9ek05j2qatkmh34yjajefzx8vl34aatlld8s9zwnjpjq3zw0s6zk76dfu9auhuh3uzx44ztmhqrtmj8jwrtff6a5lu5fjky3wpzxsege07yglneeg8yynp8uwfsfwm3xxhra06krprc5tcjtg2fyhvymcgg5l7cqzqv2sdsh7f54jhndrjkgmn6m45vdk0x97mhm4zana39k4u3xta4u4uwycv5rrjefchtlwhd8fdvxewcwd9csscytlwhlwhzslx74jl44y3nfjm2t94cpauxqnn45jf0e262e6grrgz75wwu44qutn55maj2r4dp9s0wvme6tq3v38cf84ec0lnyppueyztnkscunckmyxu95j7w5kaqpxyv25cn0xzxzlmvwgyzdpk4gll28ch8qudxmwwlkn3g0sq7ylczrdt8pzdydmqxc6vr3d29mp5cjn340eq5mjjj5vf7ags8p9w9ecnv7e0yj804fhazxdqv4x9hmy45fdsaheptl4rywvds45ujxfazxrdmdmnsf43hydhw3nwvqng3hya3q9th24h6kzg0aqjvwgky5pes7mqe6092e57vyvglwnu207yc905zclftkx4473rcerleaccpncy5caymlw5lzjvrmem46nzxtch6xg0fas5zhe7dxea9d7ckzsszwp9fec2wlv244fdghyaemw70wlr095erz6kq2t9n8aukgyx90f0pgwla0rp22h4d26e92k4j562a4ck99we92z7w4app72m2saz2gdyff0nxcpeq5cfw8a2ggtnm42tkhfgs20jgyque4cg8s5wyg8stv3mqvsu4v8es7lpdtpglu394kgry3f9twgal6v78xvk2ukanj9870pzcdfcxxteefaqw0yj3arnjh62qet8e20m66pwy3xd508g3rp4486sg3gj5p0yfp0807y3l9auzyl0r9djrw5r3swmx7xuqwqyyq6r44lv8j40xlzf6mtq4sy07xack5gls9dhz7a6zxp0qq834e44lm2dx2d6e87k5tsz5axrmxuhhhdtswt79mv0tuf9g3kp398dr536ayansy5u56w000csx8hvgkkm0m28n2hr5ljrfev9t0ju66fwshq6m22tne83d0ufx3kyg2t2l8h6a8ygkp4pm6d8l3d7zm6ftsmsj59a0jp2xk79e3c30n3uluqt2casznfxw5q0ng2j5vqfcfrjpdl4mkg6rv0xtrn2xj6jhhwsfq7hwx4f24g332qmw7c0qz0wgmz3ll4zyrk6sea5fxwe4f38n3wp2n4mym3f808acsj30gatr7cltgdrwe4z04khts2llnnxxjgwkgw5gx4gx4gx48lul7sg5hal7x742p8w7zxp7vjc8kpxr775tu9hd6r4j402vrn25z78v74a62247dlwwjkxaeenpnptkfh4g7u5mkh4lmmtqyfm9g3zj6ae9g90062tuaeql27eesaemlqtuz53ajrkf36yl5z4qt08zhs4w7vgr3ehc25yyhnvyjms758v83xdug2sfv9gm9s86l3gwg9cuszn8dlqjeyndyu655lgaq3cmw9c9k35027klq3fwysgdcpl8q8kc53pj3rzmm0gkmnt8a32hkgv5ker6sug604ys4crrhvdnx775futu4k6eggrtupazcu20f9qzf6xesa77z4a5kua27fw9trjdk3nmnl3e9m7ph3k67sp229fz92gz4cq4sp45p95pd5etlps6y4cdcgzle0407d438lkmhsakf0njtewgfyft4k62prfs4hghnnf8am5c84junhmhvwjd7z6l9ch9u9dljzg2w2mh7avk0lhy2uda8vsguulj0cdqdp7qrzpr36hgz7qfamsx360mw4g3tqhjm6gydtsu2ne7rdm2a4djmt3kqcw68rcrkh9z6cfd7hvtvltjeuqrresswwzsq3ptvpfl6dg072dykdyxrhckj0qc98smvx8cydcjd5qrv94umxd20dypncjqugwuy4qe6zfqq6rxm3qyaulhw3jcpf3qhja8e67mc98zudjpwfrxlyth0hqpp29gn8262r3c2rqc2haq393lqlmj7sd7w5adjkzlktvvetpdd2rwngtjn70v0uwyvgpq96jc20gz0cznq685nkam5f3043un4g43lka2jqsyhx5j6rxdzpdchvg5g7qvgy0zgvsqf4tsws42zqwelgn5jugdqu7g48j8xv6ldzxsq5cd6udh73lpps4vtw0jkfq2a26f0q5374sg75u32sjge8j22j2rdu5kk0k7hq4y3ukfvayth5yhtjq02ff4mhp8k92vrj5y25y25yg5yf5qf0036qy50gvzuqfg7qea002930arvueeef9380m3jqd8edqtcmnv20vvj48wt7hmctqufjq2tt682vkemxkd2vw4jva728hry40r2unsl48g38s6l307jv8jweqq40f3wmfc5t8cm4nhpv94yzkg4ztaddehjh03k0w4p8e9xrsq88hzpx9gkq2wq5ek7q88jkh4cksq65trye6w72vfludw6r63wxeyv9css2t9gycdrry4u7usc6snz3khe2eyuhf25x98m2zkxqsk3g25xxltj6jjdauhlsxf3zf66tnhk5svfykettr3damw0yuhtzzy83g8wcvv3c9fp9wh8yp9dtswu2vsqfefmwal84d29647ph67v6m7ns6keekrzcmn4tuf3q7k05mk6y2cfg66kz62fj5mqzzyfz3v43luvdw3uh5xn3dv0w7xht4aew3y4xpf7y4np0kslt8rtu0s7fwc0mm7g5j8z49azw5egnyw25j9td4wh7euuwjg5d3kqnr8ez4x24nh5cfvw4gzujs9q4jxj5q25z2sz2jzzjzxjzyqzjzxjw9h6wg587lu7dsvujunf2ml0yc5tl5nvmd38xrh3lews46lw7tm3weysu96lvjyllrdsvnwr90kr5w6vvn90e0af4z9zq3pgay58nqykx887fng55vv5nlzmjhx4ln5ughvtyxhyulgdu32wlfjmzt33e55a7927fuqslxr39hsahcjt4ww5yrv99f57uy5v7cpvgk88sqzzzswap0y0cr4eanct0v03zmpeg79en84gxa2088fn0jcjzvret2gqfa3933dyghftznxy8s2t7cyy49dredch7r39zjgmvcrm3mya8vgngdjpmm5e0r5k5z8t9ncp5rgwrhtgdxru8gwf43w9hujlme4xytrh4986t9422zvm6n305e3y46f7vx9x9h2733ckde4zrk4uxf6rku5vymj4zyta2666txr4hvlxgcjv7xm5tcfpgrg49h4xw04ahd4pvw23ahqe4ttdremk7lje74kw0ghp4rh77ec98rgpqz63q6ssvssvqsvgsvgsvfak8gzypmpstsqgrkr84a7q4sj2rkp5tay84r20vsvef823elcfxx6znyuduqc0h5k2jggjn9lz6amtnw0dwtvxpw9u0cr2vd67tt077xvam9n6vlmqy9hfzu590x8n9rz6yhcvulmdfk99kjuqhvwvahrrmuc99hlzjm7zacvp0v8akwasm267cf2cppnfxmsv2d2j2mp3rd7thzj4ehf6a3mlwp3tz2nyuh5zak0an8wznz2wen0prsmwwaegnrqhehhfu739s85l05ht2tvfx0uk9vpd7xh6w9jd8mh9d8w5uzmaxanxkpu3gwfth3e2e202u8r5y0feg7fq969trvq93x6mfmjltxnrmgx5wr52accrr4y7etmy5x4evj3c9ttcvvehkuux7fpvxdq3emwpp07mvy4kce047k4n6qz6njrrt4c7052mwgrc9vg4th559ld2zy9etrg6qsmzd6yfy8dvqe82jya85djz96d2r26hm6lsw25zye3gx6w8r3lvejalj8ghzc59nq4jpl9x6edql6dnlxqtc03ut4jeh30n60n09hrwhgm2wwdyt0w5tef7xkq9vl8039gks7l62c9r8ss7320hz98k0432gmpzch06yp3dfs9hg0tucaxnysftzccf5yf87c0m9rn3d39e9jh9rjwpd7t47zjc93mcue05t54tydeylmcynl62w48qg2uuzkxaarem529yxcpzc8a3smxkl6heam3qv89uvl0r8qhqlelgvccqqdkder059m7xv9e8n4swtjz054lnzckcqfucw8ufmz8y0jlyqy7nrwqn47uts9ydnw624ydrswmw8qgt9v6shpaljppvfaq5r4pyj3lwrzudhav8a965ch8cpctspf7h7z0ph2408vl82mmeh8v9lrrxrwy7tzlnjyp89jvld5azu8y45lkx0pnfs0cnp849aa8xzg57flw2gc5cvwnh3sgfan0t9gmkwt932lm6u89n86snnmypvk5zmz60ck4d5dl3r907vfxk43lnmd9v23a3q0qpxcr7q7cqxcr7q7cqxcrlkclq0dcpstsqxcrcwg07hkkzn5g7ddr7qvjk92arszk8cxa4uem2d8g5z6galjat9r06vkfpmmcmxd9stc6nfzrgnummyrcqe35f07utm2zz8u7msfusjzz9t7fghe4pwnlle8jusj0axhdh5qwhs3943vejugq3vaz4ezxuxquz6gul4zdnv446km3vztknda0r2085xj7v5ydd8g3vjfecdxhkxe7un2rksrzmmk9y0skj3wr8w8hpepmznds3wzmlqrp5jua25j6nrwlfxhnntl34qlt8ygdf8hfnfetdgwfd9udv2vfyl86wpumslpcrkdc4e8xh5tjmeqxygvyhccd4jwse2ce5en443p0txn5syd2e2kteg6cf9v8en07c6pxvfhngwqzty00qqmjf4l6awpw7dejm8e8y2wdrazkeem5a9nvlyg7zhtue2v8pe260yvfrczrzqr3zm9q796q5jtla75ccdllw5lgateuzf5h4wnmcy03p4xq54vuxsvn7rc49snkd8pe9wmefq85a5yaxvtl4ld2rh4lvqvngm6n2xhm4w7pm3mxwqw0hhzvgh8a2v5v096tu44888ltvh0ptvl4tyn984mjps0qu3ccnnv559xv4pv37d77vxsrl3l38kkrujmvlaayzgstu5n35mtfcdaqlsn6u8k0n5kr6t96r6qn4n2as79lr89ce7phl6k65wjddrs9m9u5xgjlm0punggxk80qm7x24vjl4lz9xnd790gra079yrwztw6xhh36w0jgnd2qz77e9fyx9ga6q9sjszwhemkeh7es4j7x60dwc2leu74zknzya5daj4jkpnwmtcqv7nx758v0zqw5rhdw622uqr7eemfvvvcm55yy3wtmxaafv0m2y6t6m94q5pxwa7v33sw300q2m3d9erdn3gf6h4j6a92g249a72etpgyk93jy4jwc6pyrzffq85ehqahs4qvpmsqas8vpmsqas8vpmmq0cxwcrc0cgzvpmhqx82m7335rmlu9tv3tr55gn78jf8wmxxc5s0vwulh6a8xapn30ughjd7xd8zhwqw2m3arl5wseyk2c3e39dvz8lx0hgplnjpf7kds9md8mrrjlnumfaves04f35lwn0f67d6vj2mhvfa2jfs0vzjer535qnspsvv537df8z45g6y9u3k7a9fssz4ve4m2du4wxw3jmvvhmgy7p30qnc0z6sf5qaeu3dny084fv77zw805l02k6mncpyfah3se9xs49gy0sm9hng499ln2pllhttlkuhr6nut6gaxymkhj38y0g3r379czlqrpaax4l7wd264km6h8qxjy769uxrjjnyqqwq3zjr9vfw4ulj276qj857hyy72t04s90a7hhlm2z9hxjzqfwzn5yv7mf8xq3r4tkjtc9yy98v6fucd8sladvlwntv5al06fcxt48r4tnxdr65s9xn9xzsk280tf4mq688cg44cym5dgsw8r8m3khmzldx26u5p3kt8uj7c8zgap62ysr32z92z92zy2zy6qyhhcaqz285xpwqy50qv7hh4zcjkn4ha3synht5h0aarec8ps5mu7d6mel2fnk78mp7ql9zra2c8706yhavpey6k9r5ehdd8qcslcxswkla2gsq86fw74jqgnzejv8ftw7hwmen92ygkj9lf0xwkunul89ye4x65nnyfk6zm6r7dmuekysr4yfvct7acjgfddk5klmw26rlfryh22tcya6un3kyggm2ak3dk5zxystdt5p5qy2m4js9g3j9c8csh2ffjus2lr5jnxffdeecy53puywcl0uvlzvlf78k7ktu9jles08mh4wl4ls2tct32333heht8eav7u80z2udzl059cfg38xfg3nczkcvwk22f4p7cvp5lpxa5etx3xnm00d9xvl4uxaltfpz9fk0k86rlg2yvqxy2xwyxtg9e6js23ny4puff2tv4q8a7yg5zntsapa75v8ma70rd5uv68tv6ed5t2agetajzaz768nw376hprn7pm2xklzvvevljwehcr6ym9facgjyte2tllzw49glg4vh3le93rcejy8ay02snmn4g0p2lmynxe7usf9jvmgmmdyl458syzgjggjggsgq3gy3gy3qy38uw7s7yeqd0j45emt7dweqlacvft0r684hjszl3xwt9478cax376tk0den950lyp9hgq2yrh48m6av70rka3kslz2gcs8raytntg2n5wvr80e28k7dfamarac5995ay4q3j94uyzj7axa5rt2k95qx69q3rveguult4ru4erha7sx0a30302mwycexqlzda70n9sm8f8p53flc0zsgentrcmwjlyax6w244fhvucth9zwstjlmlfd34acf8u4x7hezz02hu3wyp9xw36a5h68pkw5f7kpqtk2fn27yy6a5mxvcjnj9p2960r6tlcyyreccj9ts22g9g3zlj8dpa9ucege3u0x0j8d8n3zv4mk3lat8w5jtjujq6g442qrsegch8d9xxjrmrhsnrh78prrawznsvdlx5sqcdc09ty93v6yl89yrme0v036h9amfpwmeye3usvta7glclyv09t6m92pgx3my8cjq4sswlkughxwlrz9chwzxxvsk8kehd879nunstxgurpcs96zy2qy2pywpyvpydhqlsvxh3xpwqqd8zvx58lrc36vgs6acytvzp22j0d7cx5m27tdut8yas2eee7a5sx2q3p4sw385y5uljw9sp9fwkn8p6cvfwd8xh972nyd0yp5ugfrae25enleu84ldmpmxwlhqcuawz4vtdj80kttd7x5262t0nejmslj9828mgh70xa7vnp99uyqc38dzw9t72tk3807rxqacp9w4uug8lkt94xh00077l6hrn4cdqlk485ch2evfcyamd3el8e5d84x7x94s265ydtn3ynr6gge9kc3eedvhj4a8vja3fhcm65c64akujx3q80k2rlru2a9zc8jj5ya76my3f73eanwyp54p9wnkrwta7rnlny65a59p6wzewaaeu2e4pa466mlvfaf6w3pw6cecdv6dmq0acnqlkq0ks0ks0ks0k30lax8g8aplpq2s06rjrl4a7e960ymdxfghwjawnswg4dhj24ykkzf3dz25udklspsv4t67exg4pj8y5a7vuxtgky3r5tq7dp8rvx86ylmf836l0m4hpg22whd8hgezvdtl7hrf55u7w30vuae7fz504yjxr88fd5n23zw20mc8yrw74rve2870hnfvw8wnf77flvtan9a4pnmjeyzvnwnyq7hkls4lmmlgxsu3y048nghr3ayp944m8wduxnht9mfegn35m2l4knylhvjwpmytzmvgaukktm2xskv0m6lamj2gtt88gzm27nswt5dct8xrqv07sv7caw4hhjwuefsyz79z4pywlhz0qxekhc8na0fqme5ans437elh29w0weh95nj4tvygdv5lstqs0eyrld5cya5ra5ra5ra5rl5r7ld36plgwcvz5p7casma00kx0n72f42y3cjgy65fj5az20l98w8mdv9pav8yq6hkghxuh8727l4nfdnyl72tpv87u7t4886j64d4sa7jnld56ymel9em9chc8u5fzqj8zm54jmhxtg8mdn9uk64sugre7r8ee9zjc88u2rmz8u74x29p4hs5f9daxuzv9fn3jy07qdcn6sm8kdcw93javx4c9ed9l77hme45xd667mx629vlyj2hu6pn2e6gkfazcjvmrzd00f67vth7fl06qqtd3rhj6e0dg6ze37dkkwrtsmdspgk965j3ne0h94dumfk56xmt60hsl2pv9wfp8a2u64p98k2vch4v08p5mmyz6etgkawy5dju924vlwh8ht7evdhaz9ldvyjmfyyswfjaevvmgp50akdrcd64u6m7g5csmjhqf27vxp04rwdg4y0j6awg7mq8sdks0ks0ks07s06s0mak8gra3mpstsrmrkr84a7c472tyd09yrhvcy8wa9yaz9enje73n93kmyqnn4e6gepvxs2nu54xa98ykaef3x7f47ps3kknfj8e7c70a5ru2lm4sylajmha0cc74n0zatxes55vrahvjsz0a57047h2y65mg6a4g0wnyrpqgzv4zehmmc2qm483eltekmmtwrfzj2wax0v4pdmhvfavvd59u5upd987rmj5gzwulryqajvssudltwk966h89a3pv278jkuvl64d8r62mcn63n7m0ue2yqe0jygw7p00ghf6klvsjv6s2fljy556adej8j6mgrm3hcy2ecrwca4j4yg4jz8pu6ggqm9627g6ctr97303n5l98xl93kknp8rr24wsmaw33rwrts3wwk2yvqxy2xwyxtg9e6jj4n4wgykdsqhvsjc2mues6tkyk2ps35ac92mda69saldwlnucutagetajzprdp4qfmcr0dqeyswftq2v3vv6jde6n9yn4648z5zsxthym9u908zhjvemnxgjymu36ahg29uft0utphggmt0xw77f8vngr7emdpx6kurqvr3qwysex33lmp8v5wde65vlnge9ayw3dfsmmmrtkf2v8mxek6467qa0lrapc6xcalrrcl2w4t5zr4cumzsskrds4h0w58s80nu78gezdu5x7mu93m5tgxdf443fsnmt6ng5zc3rglht4404hl80534l83y4yshezxcu9jnmtyntgy7rr2f083fcts8d2prm8hlyut6w24danmlkplsapsvn37e6l6vw53vvgdkxkk2vhyu4aq0malhujg42uhk0pq4fl23xtws84x02e8ys7ewynjwqg3hkxn6f9gru6tr8lff0qngena7f5yxj068605g7zm60hwwpgfx78lx4r8mqe6vhl7hzhsr0wvmcj38ge92rtdw8gh24vrfzwh73wkgv4f0tdenynl6yjqwsjnz624pmjp2panhwc7xl9y4nky60nr6gsp5t6fr8kxj2lzrw4v8tkt7qpsupd4ve754m8')                                                                                                                                            

In[3]: o.arbitrage()                                                                                                                                                                                                                 
Out[3]: 
{None: 0,
 <bytes32: 6d95dae356e32a71db5ddcb42224754a02524c615c5fc35f568c2af04774e589>: 0}

In [4]: o.to_valid_spend()                                                                                                                                                                                                            
Traceback (most recent call last):

  File "/home/juraj/chia-blockchain/venv/lib/python3.8/site-packages/ir/reader.py", line 80, in tokenize_hex
    return ir_new(Type.HEX, bytes.fromhex(token), offset)

ValueError: non-hexadecimal number found in fromhex() arg at position 145


During handling of the above exception, another exception occurred:

Traceback (most recent call last):

  File "/usr/lib/python3/dist-packages/IPython/core/interactiveshell.py", line 3331, in run_code
    exec(code_obj, self.user_global_ns, self.user_ns)

  File "<ipython-input-4-9d1fea059424>", line 1, in <module>
    o.to_valid_spend()

  File "/home/juraj/chia-blockchain/chia/wallet/trading/offer.py", line 434, in to_valid_spend
    solution: Program = solve_puzzle(

  File "/home/juraj/chia-blockchain/chia/wallet/outer_puzzles.py", line 54, in solve_puzzle
    return driver_lookup[AssetType(constructor.type())].solve(  # type: ignore

  File "/home/juraj/chia-blockchain/chia/wallet/cat_wallet/cat_outer_puzzle.py", line 76, in solve
    solver["siblings"].as_iter(),

  File "/home/juraj/chia-blockchain/chia/wallet/puzzle_drivers.py", line 83, in __getitem__
    return decode_info_value(Solver, value)

  File "/home/juraj/chia-blockchain/chia/wallet/puzzle_drivers.py", line 103, in decode_info_value
    expression: SExp = assemble(value)  # type: ignore

  File "/home/juraj/chia-blockchain/venv/lib/python3.8/site-packages/clvm_tools/binutils.py", line 89, in assemble
    symbols = read_ir(s)

  File "/home/juraj/chia-blockchain/venv/lib/python3.8/site-packages/ir/reader.py", line 156, in read_ir
    return to_sexp(tokenize_sexp(token, offset, stream))

  File "/home/juraj/chia-blockchain/venv/lib/python3.8/site-packages/ir/reader.py", line 109, in tokenize_sexp
    return tokenize_cons(token, offset, stream)

  File "/home/juraj/chia-blockchain/venv/lib/python3.8/site-packages/ir/reader.py", line 50, in tokenize_cons
    first_sexp = tokenize_sexp(token, offset, stream)

  File "/home/juraj/chia-blockchain/venv/lib/python3.8/site-packages/ir/reader.py", line 117, in tokenize_sexp
    r = f(token, offset)

  File "/home/juraj/chia-blockchain/venv/lib/python3.8/site-packages/ir/reader.py", line 82, in tokenize_hex
    raise SyntaxError("invalid hex at %s: 0x%s" % (offset, token))

  File "<string>", line unknown
SyntaxError: invalid hex at 1: 0xa402643c844ad9048d4a6f9c724077254fa5e1355b7afb06088de4f92ad489a6e9045811e8797a49157ca20510bac62f3e985c5f94fbbfd3d8fbed99886750820000000000008a840xf94821c0703b8484dcfba68b1a678002efbe97dc058b8ffb9f26723d34c449b5e9045811e8797a49157ca20510bac62f3e985c5f94fbbfd3d8fbed99886750820000000000008aac0x305baf63dcf188fc2428f407192dfd4a864ea66ea254b8e7c06ecdf60cca38ece9045811e8797a49157ca20510bac62f3e985c5f94fbbfd3d8fbed99886750820000000000008ab60x3004c589bb0f1a12d77b0e7c088f8f0784ff1fefb3dabe58abf628f823ff4cc6e9045811e8797a49157ca20510bac62f3e985c5f94fbbfd3d8fbed99886750820000000000000dea0x9a8bfb20c917101a87e0df9a3b7ae8f71bcbdbd7d0a6ad5f82fec8103c50285ee9045811e8797a49157ca20510bac62f3e985c5f94fbbfd3d8fbed99886750820000000000000dff0x2b48fde044f0a762e40722b1d408773ebc6b1acf52775da63712961260525be1e9045811e8797a49157ca20510bac62f3e985c5f94fbbfd3d8fbed99886750820000000000000e140x7cae3963df72a4a4f1f725799fd372b1b0ee6186659bf102f519e22e32a694a2e9045811e8797a49157ca20510bac62f3e985c5f94fbbfd3d8fbed99886750820000000000000e290xdfe095e252b13de47613a1f6d6d6cb92155cf816b5edd06e9afab1e42e497970e9045811e8797a49157ca20510bac62f3e985c5f94fbbfd3d8fbed99886750820000000000000e3f0xed54ad5c38fa6d1d6c2f48c7adffc52310a7d76e12cc22cdfee8ba0afdb0c676e9045811e8797a49157ca20510bac62f3e985c5f94fbbfd3d8fbed99886750820000000000000e540x7481a5a0ca2eb8b1543a62e63f0574e61e66b0e0f51f062650fe9987538cfe62e9045811e8797a49157ca20510bac62f3e985c5f94fbbfd3d8fbed99886750820000000000000e6a
```

Hints from issue discussion:
It looks like when parsing the cons list of hex numbers in the aggregated offer, multiple hex numbers somehow get improperly concatenated:
SyntaxError: invalid hex at 1: 0xa402643c844ad9048d4a6f9c724077254fa5e1355b7afb06088de4f92ad489a6e9045811e8797a49157ca20510bac62f3e985c5f94fbbfd3d8fbed99886750820000000000008a84**0x**f94821c0703b8484dcfba68b1a678002efbe97dc058b8ffb9f26723d34c449b5e9045811e8797a49157ca20510bac62f3e985c5f94fbbfd3d8fbed99886750820000000000008aac**0x**305b....

Commit message: Fix CAT offer aggregation edge case

Patch to review:
diff --git a/chia/wallet/trading/offer.py b/chia/wallet/trading/offer.py
index 57a574390ea2..a8df7f03ddd2 100644
--- a/chia/wallet/trading/offer.py
+++ b/chia/wallet/trading/offer.py
@@ -425,10 +425,11 @@ def to_valid_spend(self, arbitrage_ph: Optional[bytes32] = None) -> SpendBundle:
                                 + sibling_coin.parent_coin_info.hex()
                                 + sibling_coin.puzzle_hash.hex()
                                 + bytes(uint64(sibling_coin.amount)).hex()
+                                + " "
                             )
-                            sibling_spends += "0x" + bytes(coin_to_spend_dict[sibling_coin]).hex() + ")"
-                            sibling_puzzles += disassembled_offer_mod
-                            sibling_solutions += disassemble(coin_to_solution_dict[sibling_coin])  # type: ignore
+                            sibling_spends += "0x" + bytes(coin_to_spend_dict[sibling_coin]).hex() + " "
+                            sibling_puzzles += disassembled_offer_mod + " "
+                            sibling_solutions += disassemble(coin_to_solution_dict[sibling_coin]) + " "  # type: ignore
                     siblings += ")"
                     sibling_spends += ")"
                     sibling_puzzles += ")"
diff --git a/tests/wallet/cat_wallet/test_trades.py b/tests/wallet/cat_wallet/test_trades.py
index 55a0d167cf98..b8c5f643b6c2 100644
--- a/tests/wallet/cat_wallet/test_trades.py
+++ b/tests/wallet/cat_wallet/test_trades.py
@@ -138,6 +138,8 @@ async def test_cat_trades(self, wallets_prefarm):
         assert success is True
         assert trade_take is not None
 
+        first_offer = Offer.from_bytes(trade_take.offer)
+
         MAKER_CHIA_BALANCE -= 2  # -1 and -1 for fee
         MAKER_NEW_CAT_BALANCE += 2
         TAKER_CHIA_BALANCE += 0  # +1 and -1 for fee
@@ -229,6 +231,8 @@ async def assert_trade_tx_number(wallet_node, trade_id, number):
         assert success is True
         assert trade_take is not None
 
+        second_offer = Offer.from_bytes(trade_take.offer)
+
         MAKER_CAT_BALANCE -= 5
         MAKER_NEW_CAT_BALANCE += 6
         TAKER_CAT_BALANCE += 5
@@ -267,6 +271,11 @@ async def assert_trade_tx_number(wallet_node, trade_id, number):
         assert success is True
         assert trade_take is not None
 
+        third_offer = Offer.from_bytes(trade_take.offer)
+        # This tests an edge case where aggregated offers the include three of the same kind of CAT
+        # (and therfore are solved as a complete ring)
+        Offer.aggregate([first_offer, second_offer, third_offer]).to_valid_spend()
+
         MAKER_CHIA_BALANCE -= 7
         MAKER_CAT_BALANCE += 8
         MAKER_NEW_CAT_BALANCE += 9


Code review comments:
diff_hunk: @@ -267,6 +271,11 @@ async def assert_trade_tx_number(wallet_node, trade_id, number):
         assert success is True
         assert trade_take is not None
 
+        third_offer = Offer.from_bytes(trade_take.offer)
+        # This tests an edge case where aggregated offers the include three of the same kind of CAT
+        # (and therfore are solved as a complete ring)
path: tests/wallet/cat_wallet/test_trades.py
text: @user1:
therefore*